KR20160016037A - 비휘발성 메모리 장치의 동작 방법 - Google Patents

비휘발성 메모리 장치의 동작 방법 Download PDF

Info

Publication number
KR20160016037A
KR20160016037A KR1020140099195A KR20140099195A KR20160016037A KR 20160016037 A KR20160016037 A KR 20160016037A KR 1020140099195 A KR1020140099195 A KR 1020140099195A KR 20140099195 A KR20140099195 A KR 20140099195A KR 20160016037 A KR20160016037 A KR 20160016037A
Authority
KR
South Korea
Prior art keywords
data
memory cells
buffer memory
cells
memory device
Prior art date
Application number
KR1020140099195A
Other languages
English (en)
Other versions
KR102178141B1 (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 KR1020140099195A priority Critical patent/KR102178141B1/ko
Priority to US14/697,381 priority patent/US9501343B2/en
Publication of KR20160016037A publication Critical patent/KR20160016037A/ko
Application granted granted Critical
Publication of KR102178141B1 publication Critical patent/KR102178141B1/ko

Links

Images

Classifications

    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Read Only Memory (AREA)
  • Computer Hardware Design (AREA)

Abstract

비휘발성 메모리 장치는 제1 버퍼 메모리 셀들 및 메인 메모리 셀들을 포함한다. 제1 버퍼 메모리 셀은 입력된 제1 데이터를 저장한다. 메인 메모리 셀들은 제1 버퍼 메모리 셀들로부터 독출된 제2 데이터 또는 정정 절차를 통해 제2 데이터로부터 복원된 제1 데이터를 저장한다. 비휘발성 메모리 장치의 동작 방법은, 비휘발성 메모리 장치에서 실행된 독출 커맨드들의 누적 횟수가 기준값에 도달할 때 제1 버퍼 메모리 셀들에 포함되는 샘플 버퍼 메모리 셀들에 저장된 데이터를 샘플 데이터로서 독출하는 단계, 에러 정정 코드에 기초하여 샘플 데이터에 포함된 에러들의 수를 계수하는 단계 및 에러들의 수가 제1 문턱값 이하인 경우, 에러들의 수에 기초하여 메인 메모리 셀들이 제2 데이터와 정정 절차를 통해 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계를 포함한다.

Description

비휘발성 메모리 장치의 동작 방법 {METHOD OF OPERATING NONVOLATILE MEMORY DEVICE}
본 발명은 비휘발성 메모리 장치에 관한 것으로서, 더욱 상세하게는 비휘발성 메모리 장치의 신뢰성을 제고하는 비휘발성 메모리 장치의 동작 방법에 관한 것이다.
플래시 메모리 장치와 같은 비휘발성 메모리 장치의 메모리 셀들은 서로 다른 논리 상태들을 나타내는 문턱 전압 분포들을 가지도록 프로그램됨으로써 데이터를 저장할 수 있다. 상기 비휘발성 메모리 장치의 하나의 메모리 블록에서, 일부 블록에 페이지 단위로 데이터가 프로그램된 후, 상기 프로그램된 블록에 대한 독출 동작이 반복적으로 수행되는 경우, 독출 디스터브(Read disturb)에 의해 소거 상태인 다른 블록의 문턱 전압 분포가 넓어지거나 이동(shift)될 수 있고, 독출 디스터브에 의해 상기 프로그램된 블록에 물리적으로 이웃한 블록들의 문턱 전압 분포가 넓어지거나, 이동될 수 있다.
비휘발성 메모리 장치가 하나의 데이터 비트를 저장하는 싱글 레벨 셀(Single Level Cell; SLC)로 구성되는 버퍼 메모리 셀들과, 두 개의 데이터 비트들을 저장하는 멀티 레벨 셀(Multi Level Cell; MLC) 또는 세 개의 데이터 비트들을 저장하는 트리플 레벨 셀(Triple Level Cell; TLC)로 구성되는 메인 메모리 셀들을 포함하고, 입력 데이터를 버퍼 메모리 셀에 저장하였다가 메인 메모리 셀로 이전하는 온-칩 버퍼드 프로그램(On-chip Buffered Program; OBP) 방법을 사용하는 경우, 데이터의 입/출력이 잦은 버퍼 메모리 셀이 독출 디스터브에 의해 신뢰성이 저하되는 문제가 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 일 목적은 온-칩 버퍼드 프로그램 방법을 사용하는 비휘발성 메모리 장치에 포함되는 버퍼 메모리 셀들의 신뢰도를 제고하는 비휘발성 메모리 장치의 동작 방법을 제공하는데 있다.
다만, 본 발명의 해결하고자 하는 과제는 상기 언급된 과제에 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.
상기 일 목적을 달성하기 위해, 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작 방법은, 상기 비휘발성 메모리 장치가 입력된 제1 데이터를 저장하는 제1 버퍼 메모리 셀들 및 상기 제1 버퍼 메모리 셀들로부터 독출된 제2 데이터 또는 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하는 메인 메모리 셀들을 포함하는 경우, 상기 비휘발성 메모리 장치에서 실행된 독출 커맨드들의 누적 횟수가 기준값에 도달할 때 상기 제1 버퍼 메모리 셀들에 포함되는 샘플 버퍼 메모리 셀들에 저장된 데이터를 샘플 데이터로서 독출하는 단계, 에러 정정 코드(Error correction code)에 기초하여 상기 샘플 데이터에 포함된 에러들의 수를 계수하는 단계 및 상기 에러들의 수가 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계를 포함한다.
일 실시예에 있어서, 상기 비휘발성 메모리 장치의 동작 방법은, 상기 에러들의 수가 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계를 더 포함할 수 있다.
일 실시예에 있어서, 메모리 콘트롤러는 상기 독출 커맨드들을 생성하고, 상기 기준값은 상기 메모리 콘트롤러에 의해 랜덤한 수로 결정될 수 있다.
일 실시예에 있어서, 상기 에러들의 수가 상기 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계가 수행된 후, 상기 독출 커맨드들의 상기 누적 횟수는 초기화될 수 있다.
일 실시예에 있어서, 상기 에러들의 수가 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 상기 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계가 수행된 후, 상기 독출 커맨드들의 상기 누적 횟수는 초기화될 수 있다.
일 실시예에 있어서, 상기 샘플 버퍼 메모리 셀들에 연결된 제1 워드 라인은 상기 독출 커맨드들 중 빈도가 높은 독출 커맨드에 상응하는 제2 워드 라인과 이웃할 수 있다.
일 실시예에 있어서, 상기 샘플 버퍼 메모리 셀들은 소거 동작이 수행된 버퍼 메모리 셀들일 수 있다.
일 실시예에 있어서, 상기 에러들의 수가 상기 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계는, 상기 에러들의 수가 제2 문턱값을 초과하는 경우, 상기 메인 메모리 셀들은 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하도록 결정하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 에러들의 수가 상기 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계는, 상기 에러들의 수가 상기 제2 문턱값 이하인 경우, 상기 메인 메모리 셀들은 상기 제2 데이터를 저장하도록 결정하는 단계를 더 포함할 수 있다.
일 실시예에 있어서, 상기 제1 버퍼 메모리 셀들의 각각은 하나의 데이터 비트를 저장하는 싱글 레벨 셀(Single Level Cell)이고, 상기 메인 메모리 셀들의 각각은 두 개의 비트 데이터들을 저장하는 멀티 레벨 셀(Multi Level Cell)일 수 있다.
일 실시예에 있어서, 상기 제1 버퍼 메모리 셀들의 각각은 하나의 데이터 비트를 저장하는 싱글 레벨 셀이고, 상기 메인 메모리 셀들의 각각은 세 개의 비트 데이터들을 저장하는 트리플 레벨 셀(Triple Level Cell)일 수 있다.
일 실시예에 있어서, 메모리 콘트롤러가 상기 에러 정정 코드에 기초하여 상기 제2 데이터로부터 복원된 제1 데이터를 생성할 수 있다.
상기 일 목적을 달성하기 위해, 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작 방법은, 상기 비휘발성 메모리 장치가 각각 싱글 레벨 셀이고 입력된 제1 데이터를 저장하는 제1 버퍼 메모리 셀들 및 상기 제1 버퍼 메모리 셀들로부터 독출된 제2 데이터 또는 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하는 메인 메모리 셀들을 포함하는 경우, 상기 비휘발성 메모리 장치에서 실행된 독출 커맨드들의 누적 횟수가 기준값에 도달할 때 상기 제1 버퍼 메모리 셀들에 포함되는 샘플 버퍼 메모리 셀들에 연결된 제1 워드 라인에 검증 독출 전압을 인가하고, 상기 샘플 버퍼 메모리 셀들 중 상기 검증 독출 전압보다 낮은 문턱 전압을 가지는 온-셀들의 비율을 측정하는 단계 및 상기 온-셀들의 상기 비율이 제1 문턱값 이하인 경우, 상기 온-셀들의 상기 비율에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계를 포함한다.
일 실시예에 있어서, 상기 비휘발성 메모리 장치의 동작 방법은, 상기 온-셀들의 상기 비율이 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계를 더 포함할 수 있다.
일 실시예에 있어서, 상기 제1 버퍼 메모리 셀들의 각각은 논리값 0에 상응하는 제1 논리 상태 또는 논리값 1에 상응하는 제2 논리 상태를 가질 수 있고, 상기 검증 독출 전압은 상기 제1 논리 상태에 상응하는 제1 문턱 전압 분포와 상기 제2 논리 상태에 상응하는 제2 문턱 전압 분포의 사이에 위치할 수 있다.
일 실시예에 있어서, 메모리 콘트롤러로는 상기 독출 커맨드들을 생성하고, 상기 기준값은 상기 메모리 콘트롤러에 의해 랜덤한 수로 결정될 수 있다.
일 실시예에 있어서, 상기 샘플 버퍼 메모리 셀들에 연결된 상기 제1 워드 라인은 상기 독출 커맨드들 중 빈도가 높은 독출 커맨드에 상응하는 제2 워드 라인과 이웃할 수 있다.
일 실시예에 있어서, 상기 샘플 버퍼 메모리 셀들은 소거 동작이 수행된 버퍼 메모리 셀들일 수 있다.
일 실시예에 있어서, 상기 온-셀들의 상기 비율이 상기 제1 문턱값 이하인 경우, 상기 온-셀들의 상기 비율에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계는, 상기 온-셀들의 상기 비율이 제2 문턱값을 초과하는 경우, 상기 메인 메모리 셀들은 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하도록 결정하는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 온-셀들의 상기 비율이 상기 제1 문턱값 이하인 경우, 상기 온-셀들의 상기 비율에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계는, 상기 온-셀들의 상기 비율이 상기 제2 문턱값 이하인 경우, 상기 메인 메모리 셀들은 상기 제2 데이터를 저장하도록 결정하는 단계를 더 포함할 수 있다.
본 발명의 실시예들에 따른 비휘발성 메모리 장치의 동작 방법은, 독출 디스터브의 영향을 받는 버퍼 메모리 셀들 중에서 샘플 버퍼 메모리 셀들을 랜덤한 시간마다 선택하고, 상기 샘플 버퍼 메모리 셀들의 신뢰도를 측정하고, 상기 신뢰도에 기초하여 온-칩 버퍼드 프로그램 동작 상에서 상기 버퍼 메모리 셀들의 데이터가 메인 메모리 셀들로 이전될 때, 에러 정정의 수행 여부를 결정하여, 상기 비휘발성 메모리 장치의 신뢰도를 제고할 수 있다.
도 1은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 순서도이다.
도 2는 도 1의 순서도에 포함되는 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계를 나타내는 순서도이다.
도 3은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치를 포함하는 메모리 시스템을 나타내는 블록도이다.
도 4는 도 3의 메모리 시스템에 포함되는 메모리 셀 어레이가 삼차원적으로 구현된 실시예를 나타내는 사시도이다.
도 5는 도 4의 메모리 셀 어레이의 등가 회로도이다.
도 6은 도 3의 메모리 시스템에 포함되는 비휘발성 메모리 장치에서 온칩 버퍼드 프로그램이 수행되는 절차를 나타내는 블록도이다.
도 7은 도 3의 메모리 시스템에 포함되는 버퍼 메모리 셀 어레이에서 발생하는 독출 디스터브가 영향을 미치는 워드 라인을 나타내는 도면이다.
도 8은 도 7의 독출 디스터브의 영향을 받은 워드 라인에 연결된 버퍼 메모리 셀들의 문턱 전압 분포의 변화를 나타내는 그래프이다.
도 9는 도 3의 메모리 시스템에 포함되는 버퍼 메모리 셀 어레이에서 발생하는 독출 디스터브가 영향을 미치는 워드 라인을 나타내는 도면이다.
도 10은 도 9의 독출 디스터브의 영향을 받은 워드 라인에 연결된 버퍼 메모리 셀들의 문턱 전압 분포의 변화를 나타내는 그래프이다.
도 11은 본 발명의 일 실시예에 따른 독출 커맨드들의 시퀀스를 나타내는 블록도이다.
도 12는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 순서도이다.
도 13은 도 12의 순서도에 포함되는 상기 온-셀들의 상기 비율에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계를 나타내는 도면이다.
도 14는 도 12의 순서도의 상기 온-셀들의 상기 비율을 설명하는 그래프이다.
도 15는 본 발명의 일 실시예에 따른 메모리 시스템을 나타내는 블록도이다.
도 16은 본 발명의 일 실시예에 따른 메모리 카드를 나타내는 블록도이다.
도 17은 본 발명의 일 실시예에 따른 솔리드 스테이트 드라이브 시스템을 나타내는 블록도이다.
도 18은 본 발명의 일 실시예에 따른 모바일 시스템을 나타내는 블록도이다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 안 된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 구성요소에 대해 사용하였다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면 상의 동일한 구성 요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성 요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 순서도이다.
도 1을 참조하면, 비휘발성 메모리 장치는 버퍼 메모리 셀 어레이 및 메인 메모리 셀 어레이를 포함한다. 상기 버퍼 메모리 셀 어레이는 제1 버퍼 메모리 셀들을 포함한다. 상기 메인 메모리 셀 어레이는 메인 메모리 셀들을 포함한다.
상기 제1 버퍼 메모리 셀들은 입력된 제1 데이터를 저장한다. 상기 메인 메모리 셀들은 상기 제1 버퍼 메모리 셀들로부터 독출된 제2 데이터 또는 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장한다.
본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작 방법은, 상기 비휘발성 메모리 장치에서 실행된 독출 커맨드들의 누적 횟수가 기준값에 도달할 때 상기 제1 버퍼 메모리 셀들에 포함되는 샘플 버퍼 메모리 셀들에 저장된 데이터를 샘플 데이터로서 독출하는 단계(단계 S110)를 포함한다. 제1 버퍼 메모리 셀들의 신뢰도를 모두 측정하기 위해서는 많은 시간이 소요될 수 있기 때문에, 상기 제1 버퍼 메모리 셀들 중에서 샘플 버퍼 메모리 셀들에 저장된 데이터를 샘플 데이터로 독출하고, 추후 단계에서는 상기 샘플 버퍼 메모리 셀들의 신뢰도만을 측정한다. 상기 제1 버퍼 메모리 셀들에 포함되는 상기 샘플 버퍼 메모리 셀들에 데이터를 상기 샘플 데이터로서 독출하는 단계(S110)가 수행되는 조건에 대하여 도 11을 참조하여 후술한다.
상기 비휘발성 메모리 장치의 동작 방법은 에러 정정 코드(Error correction code)에 기초하여 상기 샘플 데이터에 포함된 에러들의 수를 계수하는 단계(단계 S120)를 포함한다. 상기 샘플 버퍼 메모리 셀들의 신뢰도는 상기 샘플 데이터에 포함된 상기 에러들의 수에 기초하여 판단될 수 있다. 일 실시예에 있어서, 상기 샘플 데이터의 신뢰도는 상기 샘플 데이터에 포함된 상기 에러들의 수에 반비례할 수 있다.
상기 에러 정정 코드에 기초하여 상기 샘플 데이터에 포함된 상기 에러들의 수를 계수하는 단계(S120)는 상기 비휘발성 메모리 장치와 연결되는 메모리 콘트롤러에서 수행될 수 있다. 상기 메모리 콘트롤러는 상기 샘플 데이터에 포함된 패리티 비트들에 기초하여 상기 샘플 데이터가 상기 에러 정정 코드에 의해 정정될 수 없는 에러들을 포함하는지 여부와 상기 샘플 데이터에 포함된 에러들의 수를 판단할 수 있다.
상기 비휘발성 메모리 장치의 동작 방법은, 상기 에러들의 수가 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계(단계 S130)를 포함한다. 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계(S130)는 도 2를 참조하여 후술한다.
상기 비휘발성 메모리 장치의 동작 방법은, 상기 에러들의 수가 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계(단계 S140)를 더 포함할 수 있다. 이 경우는, 상기 샘플 버퍼 메모리 셀들에 대한 독출 디스터브가 커서 상기 샘플 데이터에 오류가 상당히 존재하며, 상기 샘플 버퍼 메모리 셀들은 신뢰할 수 없다고 판단된 경우를 말한다. 상기 제1 버퍼 메모리 셀들을 대표하는 상기 샘플 버퍼 메모리 셀들은 신뢰할 수 없다고 판단되었으므로, 상기 제1 버퍼 메모리 셀들에 저장된 데이터는 정정 과정을 통해 복원되어 상기 비휘발성 메모리 장치에 포함되는 제2 버퍼 메모리 셀들에 다시 저장되고, 상기 제1 버퍼 메모리 셀들은 사용되지 않도록 설정될 수 있다. 독출 디스터브가 생성되는 과정을 도 7 내지 11을 참조하여 후술한다.
도 2는 도 1의 순서도에 포함되는 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계를 나타내는 순서도이다.
도 2를 참조하면, 상기 에러들의 수가 상기 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계(S130)는, 상기 에러들의 수가 제2 문턱값을 초과하는 경우, 상기 메인 메모리 셀들은 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하도록 결정하는 단계(단계 S131) 및 상기 에러들의 수가 상기 제2 문턱값 이하인 경우, 상기 메인 메모리 셀들은 상기 제2 데이터를 저장하도록 결정하는 단계(단계 S132)를 포함할 수 있다.
상기 에러들의 수가 상기 제2 문턱값을 초과하고 상기 제1 문턱값 이하인 경우는, 상기 샘플 버퍼 메모리 셀들에 대한 독출 디스터브가 약간 존재하고 상기 샘플 데이터에 오류가 약간 존재하여, 상기 샘플 데이터는 오류 정정을 거친 후에 사용될 수 있다고 판단된 경우를 말한다. 이 경우, 온-칩 버퍼드 프로그램 과정 상에서 상기 제1 버퍼 메모리 셀들에 저장된 데이터를 상기 메인 메모리 셀들로 이전할 때, 상기 제1 버퍼 메모리 셀들에서 독출한 상기 제2 데이터에 대해 에러 정정을 수행하고, 상기 제2 데이터로부터 복원된 제1 데이터를 상기 메인 메모리 셀들에 저장하도록 결정될 수 있다.
상기 에러들의 수가 상기 제2 문턱값 이하인 경우는, 상기 샘플 버퍼 메모리 셀들에 오류가 거의 존재하지 않으며, 상기 샘플 버퍼 메모리 셀들은 안전하다고 판단된 경우를 말한다. 이 경우, 온-칩 버퍼드 프로그램 과정 상에서 상기 제1 버퍼 메모리 셀들에 저장된 데이터를 상기 메인 메모리 셀들로 이전할 때, 상기 제1 버퍼 메모리 셀들에서 독출한 상기 제2 데이터에 대해 에러 정정을 수행하지 않고, 상기 제2 데이터를 그대로 상기 메인 메모리 셀들에 저장하도록 결정될 수 있다.
상기 에러들의 수가 상기 제2 문턱값을 초과하는 경우, 상기 메인 메모리 셀들은 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하도록 결정하는 단계(S131) 및 상기 에러들의 수가 상기 제2 문턱값 이하인 경우, 상기 메인 메모리 셀들은 상기 제2 데이터를 저장하도록 결정하는 단계(S132)는 도 6을 참조하여 후술한다.
도 3은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치를 포함하는 메모리 시스템을 나타내는 블록도이다.
도 3을 참조하면, 메모리 시스템(100)은 호스트(110), 메모리 콘트롤러(120) 및 비휘발성 메모리 장치(130)를 포함한다. 메모리 콘트롤러(120)는 에러 정정 유닛(ECC) 및 버퍼 메모리(BUFFER)를 포함한다. 비휘발성 메모리 장치(130)는 메모리 셀 어레이(140), 제어 회로(180), 전압 생성 회로(160), 어드레스 디코더(150), 데이터 입/출력 회로(170)를 포함한다. 메모리 셀 어레이(140)는 버퍼 메모리 셀 어레이(BCA; 141) 및 메인 메모리 셀 어레이(MCA; 142)를 포함한다. 데이터 입/출력 회로(170)는 페이지 버퍼(PAGE BUFFER)를 포함한다.
버퍼 메모리 셀 어레이(141)는 도 1의 순서도의 상기 제1 버퍼 메모리 셀들 및 상기 제2 버퍼 메모리 셀들을 포함할 수 있다. 메인 메모리 셀 어레이(142)는 도 1의 순서도의 상기 메인 메모리 셀들을 포함할 수 있다.
일 실시예에서, 버퍼 메모리 셀 어레이(141)에 포함된 제1 버퍼 메모리 셀들의 각각은 하나의 데이터 비트를 저장하는 싱글 레벨 셀(Single Level Cell)이고, 메인 메모리 셀 어레이(142)에 포함된 메인 메모리 셀들의 각각은 두 개의 비트 데이터들을 저장하는 멀티 레벨 셀(Multi Level Cell)일 수 있다.
다른 실시예에서, 버퍼 메모리 셀 어레이(141)에 포함된 제1 버퍼 메모리 셀들의 각각은 하나의 데이터 비트를 저장하는 싱글 레벨 셀이고, 메인 메모리 셀 어레이(142)에 포함된 메인 메모리 셀들의 각각은 세 개의 비트 데이터들을 저장하는 트리플 레벨 셀(Triple Level Cell)일 수 있다.
또 다른 실시예에서, 버퍼 메모리 셀 어레이(141)에 포함된 제1 버퍼 메모리 셀들의 각각은 두 개의 데이터 비트를 저장하는 멀티 레벨 셀이고, 메인 메모리 셀 어레이(142)에 포함된 메인 메모리 셀들의 각각은 세 개의 비트 데이터들을 저장하는 트리플 레벨 셀일 수 있다.
메모리 콘트롤러(120)는 호스트(110)와의 통신에 기초하여 커맨드 신호(CMD) 및 어드레스 신호(ADDR)를 생성할 수 있다. 제어 회로(180)는 커맨드 신호(CMD) 및 어드레스 신호(ADDR)에 기초하여 행 어드레스 신호(RADDR) 및 열 어드레스 신호(CADDR)를 생성한다. 전압 생성 회로(160)는 전압 제어 신호에 기초하여 독출 전압을 생성한다. 어드레스 디코더(150)는, 상기 커맨드 신호가 독출 커맨드 신호인 경우, 행 어드레스 신호(RADDR)에 상응하는 하나의 워드 라인에 독출 전압을 인가한다. 데이터 입출력 회로(170)는 열 어드레스 신호(CADDR)에 응답하여 상기 하나의 워드 라인에 연결된 버퍼 메모리 셀들 또는 메인 메모리 셀들로부터 복수의 비트 라인들(BL1 내지 BLM)을 통해 독출 데이터(DATA)를 수신한다.
메모리 셀 어레이(140)는 이차원 구조 또는 삼차원 구조로 구현될 수 있다. 메모리 셀 어레이(140)가 삼차원적으로 구현된 실시예를 도 4를 참조하여 후술한다.
온-칩 버퍼드 프로그램 동작은 제1 프로그램 동작과 제2 프로그램 동작을 포함할 수 있다. 상기 제1 프로그램 동작은, 버퍼 메모리 셀 어레이(141)의 최소 프로그램 단위의 제1 데이터가 버퍼 메모리(BUFFER)에 저장되면, 메모리 콘트롤러(120)가 상기 제1 데이터를 버퍼 메모리(BUFFER)에서 독출하여, 버퍼 메모리 셀 어레이(141)에 포함되는 버퍼 메모리 셀들에 저장하는 동작을 지칭한다. 상기 제2 프로그램 동작은, 메인 메모리 셀 어레이(142)의 최소 프로그램 단위의 제2 데이터가 버퍼 메모리 셀 어레이(141)에 저장되면, 메모리 콘트롤러(120)가 상기 제2 데이터를 버퍼 메모리 셀 어레이(141)에서 독출하여, 메인 메모리 셀 어레이(142)에 포함되는 메인 메모리 셀들에 저장하는 동작을 지칭한다.
본 발명은 버퍼 메모리 셀들(141)에 포함되는 샘플 버퍼 메모리 셀들의 신뢰도 수준에 따라 온-칩 버퍼드 프로그램 동작에 포함되는 상기 제2 프로그램 동작을 수행하는 과정에서 에러 정정을 수행할지 여부를 선택하는 기술적인 특징을 가진다.
본 발명의 실시예에 따라 상기 온-칩 버퍼드 프로그램 절차에 반영되는 과정을 도 6을 참조하여 자세하게 후술한다.
도 4는 도 3의 메모리 시스템에 포함되는 메모리 셀 어레이가 삼차원적으로 구현된 실시예를 나타내는 사시도이다.
도 4를 참조하면, 메모리 셀 어레이(140a)의 일부는 버퍼 메모리 셀 어레이(141)일 수 있고, 다른 일부는 메인 메모리 셀 어레이(142)일 수 있다.
메모리 셀 어레이(140a)는 기판(SUB)과 수직 방향으로 형성되어 있다. 기판(SUB)에는 n+ 도핑 영역이 형성된다. 기판(SUB) 위에는 게이트 전극막(gate electrode layer)과 절연막(insulation layer)이 교대로 증착된다. 그리고 게이트 전극막(gate electrode layer)과 절연막(insulation layer) 사이에는 전하 저장막(charge storage layer)이 형성될 수 있다.
게이트 전극막과 절연막을 수직 방향으로 패터닝(vertical patterning)하면, V자 모양의 필라(pillar)가 형성된다. 필라는 게이트 전극막과 절연막을 관통하여 기판(SUB)과 연결된다. 필라(Pillar)의 외곽 부분(O)은 채널 반도체로 구성될 수 있고, 내부(I)는 실리콘 산화물(Silicon Oxide)과 같은 절연 물질로 구성될 수 있다.
게이트 전극막(gate electrode layer)은 접지 선택 라인(GSL), 복수의 워드 라인들(WL1~WL8) 및 스트링 선택 라인(SSL)에 연결될 수 있다. 그리고 필라(pillar)는 복수의 비트 라인들(BL1~BL3)과 연결될 수 있다.
도 4에서는, 메모리 셀 어레이(140a)가 접지 선택 라인(GSL), 스트링 선택 라인(SSL), 8개의 워드 라인들(WL1, WL2, ... , WL8) 및 3개의 비트 라인들(BL1, BL2, BL3)을 갖는 것으로 도시되어 있으나, 실제로는 이것들보다 더 많거나 적을 수 있다.
도 5는 도 4의 메모리 셀 어레이의 등가 회로도(140b)이다.
도 5를 참조하면, 비트 라인(BL1, BL2, BL3)과 공통 소스 라인(CSL; Common Source Line) 사이에는 셀 스트링들(NS11~NS33)이 연결되어 있다. 셀 스트링들(예를 들면, NS11)의 각각은 스트링 선택 트랜지스터(SST), 복수의 메모리 셀들(MC1, MC2, ... , MC8) 및 접지 선택 트랜지스터(GST)를 포함한다.
스트링 선택 트랜지스터(SST)는 스트링 선택 라인(String Selection Line)(SSL1, SSL2, SSL3)에 연결되어 있다. 복수의 메모리 셀들(MC1, MC2, ... , MC8)은 각각 대응하는 워드 라인(WL1, WL2, ... , WL8)에 연결되어 있다. 그리고 접지 선택 트랜지스터(GST)는 접지 선택 라인(Ground Selection Line)(GSL1, GSL2, GSL3)에 연결되어 있다. 스트링 선택 트랜지스터(SST)는 비트 라인(BL)에 연결되고, 접지 선택 트랜지스터(GST)는 공통 소스 라인(CSL)에 연결되어 있다.
동일 높이의 워드 라인(예를 들면, WL1)은 공통으로 연결되어 있고, 접지 선택 라인(GSL1, GSL2, GSL3) 및 스트링 선택 라인(SSL1, SSL2, SSL3)은 분리되어 있다. 제1 워드 라인(WL1)에 연결되어 있고 셀 스트링(NS11, NS12, NS13)에 속해 있는 메모리 셀들을 포함하는 물리 페이지를 프로그램하는 경우에는, 제1 워드 라인(WL1), 제1 스트링 선택 라인(SSL1) 및 제1 접지 선택 라인(GSL1)이 선택된다.
도 6은 도 3의 메모리 시스템에 포함되는 비휘발성 메모리 장치에서 온칩 버퍼드 프로그램이 수행되는 절차를 나타내는 블록도이다.
도 6을 참조하면, 메모리 셀 어레이(140)는 버퍼 메모리 셀 어레이(141) 및 메인 메모리 셀 어레이(142)를 포함한다. 버퍼 메모리 셀 어레이(141)는 복수의 버퍼 메모리 셀들을 포함할 수 있다. 메인 메모리 셀 어레이(142)는 복수의 메인 메모리 셀들을 포함할 수 있다.
버퍼 메모리 셀 어레이(141)는 외부로부터 제공되는 멀티-비트 데이터(143)를 저장할 수 있다. 버퍼 메모리 셀 어레이(141)에 포함되는 버퍼 메모리 셀들의 각각이 싱글 레벨 셀인 경우, 버퍼 메모리 셀 어레이(141)는 고속으로 동작하고, 저집적도로 제조될 수 있다. 반면에, 메인 메모리 셀 어레이(142)에 포함되는 메인 메모리 셀들의 각각이 멀티 레벨 셀 또는 트리플 레벨 셀인 경우, 메인 메모리 셀 어레이(142)는 저속으로 동작하고, 고집적도로 제조될 수 있다.
온-칩 버퍼드 프로그램 방식을 채용한 낸드 플래시 메모리 장치의 프로그램 동작에서는, 외부로부터 페이지 단위의 데이터들 즉, 페이지 데이터들(DATA)이 입력되면, 최소 프로그램 단위의 페이지 데이터들(DATA)은 페이지 버퍼(170) 내의 페이지 버퍼들에 로딩(PTA)된 후, 버퍼 메모리 셀 어레이(141)에 포함되는 버퍼 메모리 셀들로 로딩(PTB)될 수 있다. 이 때, 최소 프로그램 단위는 요구되는 조건(예를 들어, 프로그램 방식, 셀 당 비트 수 등)에 따라 다양하게 설정될 수 있다. 상기 로딩 동작들(PTA, PTB)은 도 3에서 설명한 온-칩 버퍼드 프로그램에 포함되는 상기 제1 프로그램 동작에 대응될 수 있다.
버퍼 메모리 셀 어레이(141)에 포함되는 버퍼 메모리 셀들에 페이지 데이터들(DATA)이 로딩되면, 상기 버퍼 메모리 셀들에 로딩된 페이지 데이터들(DATA)은 페이지 버퍼(170) 내의 페이지 버퍼들에 로딩(PTC)된 후, 메인 메모리 셀 어레이(142)에 포함되는 메인 메모리 셀들로 로딩(PTD)될 수 있다. 이 때, 페이지 버퍼(170) 및 메인 메모리 셀 어레이(142)의 최소 프로그램 단위는 버퍼 메모리 셀 어레이(141)의 최소 프로그램 단위보다 상대적으로 클 수 있다. 상기 로딩 동작들(PTC, PTD)은 도 3에서 설명한 온-칩 버퍼드 프로그램에 포함되는 상기 제2 프로그램 동작에 대응될 수 있다.
도 2의 순서도에 포함되는 상기 에러들의 수가 상기 제2 문턱값을 초과하는 경우, 상기 메인 메모리 셀들은 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하도록 결정(S131)된 경우, 온-칩 버퍼드 프로그램 동작 중 상기 로딩 동작들(PTA, PTB, PTC)의 수행 후에, 페이지 버퍼(170)에 로딩된 페이지 데이터는 도 3의 메모리 콘트롤러(120)의 에러 정정 유닛(ECC)을 통해 에러가 정정되고, 그 후에 상기 에러가 정정된 페이지 데이터가 메인 메모리 셀 어레이(142)에 포함되는 메인 메모리 셀들에 로딩(PTD)될 수 있다.
도 2의 순서도에 포함되는 상기 에러들의 수가 상기 제2 문턱값 이하인 경우, 상기 메인 메모리 셀들은 상기 제2 데이터를 저장하도록 결정 (S132)된 경우, 온-칩 버퍼드 동작 중 상기 로딩 동작들(PTA, PTB, PTC)의 수행 후에, 페이지 버퍼(170)에 로딩된 페이지 데이터는 그대로 메인 메모리 셀 어레이(142)에 포함되는 메인 메모리 셀들에 로딩(PTD)될 수 있다.
도 7은 도 3의 메모리 시스템에 포함되는 버퍼 메모리 셀 어레이에서 발생하는 독출 디스터브가 영향을 미치는 워드 라인을 나타내는 도면이다.
도 7을 참조하면, 버퍼 메모리 셀 어레이(141a)는 제N 워드 라인(WLN), 제N-1 워드 라인(WLN-1) 제N+1 워드 라인(WLN+1)을 포함할 수 있다. 버퍼 메모리 셀 어레이(141a)는 제N 워드 라인(WLN)에 연결된 제N 버퍼 메모리 셀들, 제N-1 워드 라인(WLN-1)에 연결된 제N-1 버퍼 메모리 셀들 및 제N+1 워드 라인(WLN+1)에 연결된 제N+1 버퍼 메모리 셀들을 포함할 수 있다.
제N 워드 라인(WLN)에 상응하는 독출 커맨드들이 자주 수행된 경우, 제N 워드 라인(WLN)과 이웃하는 제N+1 워드 라인(WLN+1)에 연결된 제N+1 버퍼 메모리 셀들에 독출 디스터브가 발생할 확률이 높고, 제N 워드 라인(WLN)과 이웃하는 제N-1 워드 라인(WLN-1)에 연결된 제N-1 버퍼 메모리 셀들에 독출 디스터브가 발생할 확률이 높다.
메모리 콘트롤러(120)로부터 수신되는 독출 커맨드들 중 빈도가 높은 독출 커맨드가 제N 워드 라인(WLN)에 상응하는 경우, 도 1의 순서도의 상기 샘플 버퍼 메모리 셀들은 제N-1 버퍼 메모리 셀들 또는 제N+1 버퍼 메모리 셀들일 수 있다.
도 8은 도 7의 독출 디스터브의 영향을 받은 워드 라인에 연결된 버퍼 메모리 셀들의 문턱 전압 분포의 변화를 나타내는 그래프이다.
도 8을 참조하면, 제1 문턱 전압 분포들(211, 221, 231, 241)은 제N+1 및 제N-1 버퍼 메모리 셀들에 독출 디스터브가 발생하지 않은 경우를 나타낸다.
제N 버퍼 메모리 셀들에 대한 반복적인 독출 커맨드들이 수행된 후, 제N+1 및 제N-1 버퍼 메모리 셀들은 제2 문턱 전압 분포들(212, 222, 232, 242)을 가지게 된다. 제2 문턱 전압 분포들(212, 222, 232, 242)은 제1 문턱 전압 분포들(211, 221, 231, 241)보다 흩어져 있고, 오른쪽으로 이동(shift)되어 있는 것을 알 수 있다. 제2 문턱 전압 분포들(212, 222, 232, 242)을 가지는 제N+1 및 제N-1 버퍼 메모리 셀들을 제1 문턱 전압 분포들(211, 221, 231, 241)에 맞춰진 독출 전압들을 이용하여 독출 커맨드를 수행하는 경우, 독출 에러가 증가하게 된다.
도 9는 도 3의 메모리 시스템에 포함되는 버퍼 메모리 셀 어레이에서 발생하는 독출 디스터브가 영향을 미치는 워드 라인을 나타내는 도면이다.
도 9를 참조하면, 버퍼 메모리 셀 어레이(141b)는 소거 동작이 수행된 버퍼 메모리 영역(ERASED AREA) 및 프로그램 동작이 수행된 버퍼 메모리 영역(PROGRAMMED AREA)을 포함한다. 소거 동작이 수행된 버퍼 메모리 영역(ERASED AREA)은 제1 워드 라인(OPEN WL) 및 제1 워드 라인(OPEN WL)에 연결된 제1 버퍼 메모리 셀들을 포함한다. 프로그램 동작이 수행된 메모리 영역(PROGRAMMED AREA)은 제2 워드 라인(PROGRAMMED WL) 및 제2 워드 라인(PROGRAMMED WL)에 연결된 제2 버퍼 메모리 셀들을 포함한다.
제2 워드 라인(PROGRAMMED WL)에 상응하는 독출 커맨드들이 자주 수행된 경우, 소거 동작이 수행된 버퍼 메모리 영역(ERASED AREA)에 포함되는 제1 버퍼 메모리 셀들에 독출 디스터브가 발생할 확률이 높다.
도 1의 순서도의 상기 샘플 버퍼 메모리 셀들은 소거 동작이 수행된 버퍼 메모리 영역(ERASED AREA)에 포함되는 제1 버퍼 메모리 셀들일 수 있다.
도 10은 도 9의 독출 디스터브의 영향을 받은 워드 라인에 연결된 버퍼 메모리 셀들의 문턱 전압 분포의 변화를 나타내는 그래프이다.
도 10을 참조하면, 제1 문턱 전압 분포들(311, 321, 331, 341)은 도 9의 버퍼 메모리 셀 어레이(141b)에 포함되는 제1 버퍼 메모리 셀들에 독출 디스터브가 발생하지 않은 경우를 나타낸다.
도 9의 버퍼 메모리 셀 어레이(141b)에 포함되는 제2 버퍼 메모리 셀들에 대한 반복적인 독출 커맨드들이 수행된 후, 상기 제1 버퍼 메모리 셀들은 제2 문턱 전압 분포들(312, 322, 332, 342)을 가지게 된다. 제2 문턱 전압 분포들(312, 322, 332, 342)은 제1 문턱 전압 분포들(311, 321, 331, 341)보다 흩어져 있고, 오른쪽으로 이동되어 있는 것을 알 수 있다. 제2 문턱 전압 분포들(312, 322, 332, 342)을 가지는 제1 버퍼 메모리 셀들을 제1 문턱 전압 분포들(311, 321, 331, 341)에 맞춰진 독출 전압들을 이용하여 독출 커맨드를 수행하는 경우, 독출 에러가 증가하게 된다.
도 11은 본 발명의 일 실시예에 따른 독출 커맨드들의 시퀀스를 나타내는 블록도이다.
도 11을 참조하면, 도 3의 메모리 콘트롤러(120)에서 비휘발성 메모리 장치(130)로 보내는 독출 커맨드들의 시퀀스는 제1 독출 커맨드들(410), 제2 독출 커맨드들(430) 및 제3 독출 커맨드들(450)을 포함한다. 상기 독출 커맨드들의 시퀀스는 제1 신뢰도 검증용 독출 커맨드(420), 제2 신뢰도 검증용 독출 커맨드(440) 및 제3 신뢰도 검증용 독출 커맨드(460)를 포함한다. 상기 독출 커맨드들의 시퀀스는 독출 커맨드들을 더 포함할 수 있으며, 상기 독출 커맨드들 사이에 신뢰도 검증용 독출 커맨드를 더 포함할 수 있다.
도 11은 제1 독출 커맨드들(410)의 기준값이 N으로 결정되고, 제2 독출 커맨드들(430)의 기준값이 M으로 결정되고, 제3 독출 커맨드(450)의 기준값은 P로 결정된 경우를 도시한다.
메모리 콘트롤러(120)는 독출 커맨드들을 생성할 수 있다. 기준 값은 메모리 콘트롤러(120)에 의해 랜덤한 수로 결정될 수 있다.
자세하게 설명하면, 제1 독출 커맨드들(410)의 상기 누적 횟수가 N에 도달한 때, 도 1의 순서도에 포함되는 상기 제1 버퍼 메모리 셀들에 포함된 상기 샘플 버퍼 메모리 셀들에 저장된 상기 데이터를 상기 샘플 데이터로서 독출하는 단계(S110)가 수행될 수 있다. 상기 제1 버퍼 메모리 셀들에 포함된 상기 샘플 버퍼 메모리 셀들에 저장된 상기 데이터를 상기 샘플 데이터로서 독출하는 단계(S110)에서는, 제1 독출 커맨드들(410) 중에서 자주 사용되는 독출 커맨드에 상응하는 워드 라인에 이웃한 워드 라인의 버퍼 메모리 셀들을 상기 샘플 버퍼 메모리 셀들로 선택하거나(도 7 및 8 참조), 버퍼 메모리 셀 어레이(141) 중에서 소거 동작이 수행된 버퍼 메모리 셀들을 상기 샘플 버퍼 메모리 셀들로 선택할 수 있다(도 9 및 10 참조). 제1 신뢰도 검증용 독출 커맨드(420)는 상기 샘플 버퍼 메모리 셀들에 저장된 데이터를 상기 샘플 데이터로 독출하기 위해 메모리 콘트롤러(120)가 비휘발성 메모리 장치(130)에 보내는 커맨드일 수 있다.
도 1의 순서도에 포함되는 상기 에러들의 수가 상기 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계(S130)가 수행된 후 또는 도 1의 순서도에 포함되는 상기 에러들의 수가 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 상기 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계(S140)가 수행된 후, 메모리 콘트롤러(120)로부터 수신되는 독출 커맨드들의 상기 누적 횟수는 초기화될 수 있다.
이 후, 제2 독출 커맨드들(420)의 상기 누적 횟수가 M에 도달한 때, 도 1의 순서도에 포함되는 상기 제1 버퍼 메모리 셀들에 포함된 상기 샘플 버퍼 메모리 셀들에 저장된 상기 데이터를 상기 샘플 데이터로서 독출하는 단계(S110)가 다시 수행될 수 있다. 상기 제1 버퍼 메모리 셀들에 포함된 상기 샘플 버퍼 메모리 셀들에 저장된 상기 데이터를 상기 샘플 데이터로서 독출하는 단계(S110)에서는, 제2 독출 커맨드들(420) 중에서 자주 사용되는 독출 커맨드에 상응하는 워드 라인에 이웃한 워드 라인의 버퍼 메모리 셀들을 상기 샘플 버퍼 메모리 셀들로 선택하거나(도 7 및 8 참조), 버퍼 메모리 셀 어레이(141) 중에서 소거 동작이 수행된 버퍼 메모리 셀들을 상기 샘플 버퍼 메모리 셀들로 선택할 수 있다(도 9 및 10 참조). 제2 신뢰도 검증용 독출 커맨드(440)는 상기 샘플 버퍼 메모리 셀들에 저장된 데이터를 상기 샘플 데이터로 독출하기 위해 메모리 콘트롤러(120)가 비휘발성 메모리 장치(130)에 보내는 커맨드일 수 있다.
도 1의 순서도에 포함되는 상기 에러들의 수가 상기 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계(S130)가 수행된 후 또는 도 1의 순서도에 포함되는 상기 에러들의 수가 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 상기 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계(S140)가 수행된 후, 메모리 콘트롤러(120)로부터 수신되는 독출 커맨드들의 상기 누적 횟수는 다시 초기화될 수 있다.
이 후, 제3 독출 커맨드들(430)의 상기 누적 횟수가 P에 도달한 때, 도 1의 순서도에 포함되는 상기 제1 버퍼 메모리 셀들에 포함된 상기 샘플 버퍼 메모리 셀들에 저장된 상기 데이터를 상기 샘플 데이터로서 독출하는 단계(S110)가 다시 수행될 수 있다. 상기 제1 버퍼 메모리 셀들에 포함된 상기 샘플 버퍼 메모리 셀들에 저장된 상기 데이터를 상기 샘플 데이터로서 독출하는 단계(S110)에서는, 제3 독출 커맨드들(430) 중에서 자주 사용되는 독출 커맨드에 상응하는 워드 라인에 이웃한 워드 라인의 버퍼 메모리 셀들을 상기 샘플 버퍼 메모리 셀들로 선택하거나(도 7 및 8 참조), 버퍼 메모리 셀 어레이(141) 중에서 소거 동작이 수행된 버퍼 메모리 셀들을 상기 샘플 버퍼 메모리 셀들로 선택할 수 있다(도 9 및 10 참조). 제3 신뢰도 검증용 독출 커맨드(460)는 상기 샘플 버퍼 메모리 셀들에 저장된 데이터를 상기 샘플 데이터로 독출하기 위해 메모리 콘트롤러(120)가 비휘발성 메모리 장치(130)에 보내는 커맨드일 수 있다.
도 1의 순서도에 포함되는 상기 에러들의 수가 상기 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계(S130)가 수행된 후 또는 도 1의 순서도에 포함되는 상기 에러들의 수가 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 상기 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계(S140)가 수행된 후, 메모리 콘트롤러(120)로부터 수신되는 독출 커맨드들의 상기 누적 횟수는 다시 초기화될 수 있다.
도 12는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 동작 방법을 나타내는 순서도이다.
도 12를 참조하면, 비휘발성 메모리 장치는 제1 버퍼 메모리 셀들 및 메인 메모리 셀들을 포함한다. 상기 제1 버퍼 메모리 셀들은 각각 싱글 레벨 셀이다. 상기 제1 버퍼 메모리 셀들은 입력된 제1 데이터를 저장한다. 상기 메인 메모리 셀들은 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장한다.
상기 비휘발성 메모리 장치의 동작 방법은, 상기 비휘발성 메모리 장치에서 실행된 독출 커맨드들의 누적 횟수가 기준값에 도달할 때 상기 제1 버퍼 메모리 셀들에 포함되는 샘플 버퍼 메모리 셀들에 연결된 제1 워드 라인에 검증 독출 전압을 인가하고, 상기 샘플 버퍼 메모리 셀들 중 상기 검증 독출 전압보다 낮은 문턱 전압을 가지는 온-셀들의 비율을 측정하는 단계(단계 S210)를 포함한다. 상기 샘플 버퍼 메모리 셀들의 신뢰도는 상기 온-셀들의 상기 비율에 기초하여 판단될 수 있다. 일 실시예에 있어서, 상기 샘플 데이터의 신뢰도는 상기 온-셀들의 상기 비율에 비례할 수 있다. 상기 온-셀들의 상기 비율에 대하여 도 14를 참조하여 후술한다.
상기 비휘발성 메모리 장치의 동작 방법은, 상기 온-셀들의 상기 비율이 제1 문턱값 이하인 경우, 상기 온-셀들의 상기 비율에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계(단계 S220)를 포함한다. 상기 온-셀들의 상기 비율에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계(S220)는 도 13을 참조하여 후술한다.
상기 비휘발성 메모리 장치의 동작 방법은, 상기 온-셀들의 상기 비율이 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계(단계 S230)를 더 포함할 수 있다. 이 경우는, 상기 샘플 버퍼 메모리 셀들에 대한 독출 디스터브가 커서 상기 샘플 버퍼 메모리 셀들은 신뢰할 수 없다고 판단된 경우를 말한다. 상기 제1 버퍼 메모리 셀들을 대표하는 상기 샘플 버퍼 메모리 셀들은 신뢰할 수 없다고 판단되었으므로, 상기 제1 버퍼 메모리 셀들에 저장된 데이터는 정정 과정을 통해 복원 되어 상기 비휘발성 메모리 장치에 포함되는 제2 버퍼 메모리 셀들에 다시 저장되고, 상기 제1 버퍼 메모리 셀들은 사용되지 않도록 설정될 수 있다.
메모리 콘트롤러(120)는 상기 독출 커맨드들을 생성하고, 상기 기준값은 메모리 콘트롤러(120)에 의해 랜덤한 수로 결정될 수 있다.
상기 비휘발성 메모리 장치에서 실행된 독출 커맨드들의 누적 횟수가 기준값에 도달할 때 상기 제1 버퍼 메모리 셀들에 포함되는 상기 샘플 버퍼 메모리 셀들에 연결된 상기 제1 워드 라인에 상기 검증 독출 전압을 인가하고, 상기 샘플 버퍼 메모리 셀들 중 상기 검증 독출 전압보다 낮은 문턱 전압을 가지는 상기 온-셀들의 상기 비율을 측정하는 단계(S210)는 도 1의 순서도에 포함되는 상기 제1 버퍼 메모리 셀들에 포함되는 상기 샘플 버퍼 메모리 셀들에 데이터를 상기 샘플 데이터로서 독출하는 단계(S110) 및 에러 정정 코드에 기초하여 상기 샘플 데이터에 포함된 에러들의 수를 계수하는 단계(단계 S120)에 대응될 수 있다. 상기 단계들(S210, S220, S230)이 반복적으로 수행되는 과정은 도 1 및 11을 참조하여 이해할 수 있으므로 설명을 생략한다.
일 실시예에 있어서, 상기 샘플 버퍼 메모리 셀들에 연결된 상기 제1 워드 라인은 메모리 콘트롤러(120)로부터 수신되는 상기 독출 커맨드들 중 빈도가 높은 독출 커맨드에 상응하는 제2 워드 라인과 이웃할 수 있다.
일 실시예에 있어서, 상기 샘플 버퍼 메모리 셀들은 소거 동작이 수행된 버퍼 메모리 셀들일 수 있다.
도 13은 도 12의 순서도에 포함되는 상기 온-셀들의 상기 비율에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계를 나타내는 도면이다.
도 13을 참조하면, 도 12의 순서도에 포함되는 상기 온-셀들의 상기 비율이 상기 제1 문턱값 이하인 경우, 상기 온-셀들의 상기 비율에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계(S220)는, 상기 온-셀들의 상기 비율이 제2 문턱값을 초과하는 경우, 상기 메인 메모리 셀들은 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하도록 결정하는 단계(단계 S221) 및 상기 온-셀들의 상기 비율이 상기 제2 문턱값 이하인 경우, 상기 메인 메모리 셀들은 상기 제2 데이터를 저장하도록 결정하는 단계(단계 S222)를 더 포함할 수 있다.
상기 온-셀들의 상기 비율이 제2 문턱값을 초과하고 상기 제1 문턱값 이하인 경우는, 상기 샘플 버퍼 메모리 셀들에 대한 독출 디스터브가 약간 존재하고 상기 샘플 버퍼 메모리 셀들에 저장된 데이터는 오류 정정을 거친 후에 사용될 수 있다고 판단된 경우를 말한다. 이 경우, 온-칩 버퍼드 프로그램 과정 상에서 상기 제1 버퍼 메모리 셀들에 저장된 데이터를 상기 메인 메모리 셀들로 이전할 때, 상기 제1 버퍼 메모리 셀들에서 독출한 상기 제2 데이터에 대해 에러 정정을 수행하고, 상기 제2 데이터로부터 복원된 제1 데이터를 상기 메인 메모리 셀들에 저장하도록 결정될 수 있다.
상기 온-셀들의 상기 비율이 상기 제2 문턱값 이하인 경우는, 상기 샘플 버퍼 메모리 셀들에 오류가 거의 존재하지 않으며, 상기 샘플 버퍼 메모리 셀들은 안전하다고 판단된 경우를 말한다. 이 경우, 온-칩 버퍼드 프로그램 과정 상에서 상기 제1 버퍼 메모리 셀들에 저장된 데이터를 상기 메인 메모리 셀들로 이전할 때, 상기 제1 버퍼 메모리 셀들에서 독출한 상기 제2 데이터에 대해 에러 정정을 수행하지 않고, 상기 제2 데이터를 그대로 상기 메인 메모리 셀들에 저장하도록 결정될 수 있다.
도 6을 참조하면, 도 13의 순서도에 포함되는 상기 온-셀들의 상기 비율이 상기 제2 문턱값을 초과하는 경우, 상기 메인 메모리 셀들은 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하도록 결정(단계 S221)된 경우, 온-칩 버퍼드 프로그램 동작 중 상기 로딩 동작들(PTA, PTB, PTC)의 수행 후에, 페이지 버퍼(170)에 로딩된 페이지 데이터는 도 3의 메모리 콘트롤러(120)의 에러 정정 유닛(ECC)을 통해 에러가 정정되고, 그 후에 상기 에러가 정정된 페이지 데이터가 메인 메모리 셀 어레이(142)에 포함되는 메인 메모리 셀들에 로딩(PTD)될 수 있다.
도 13의 순서도에 포함되는 상기 온-셀들의 상기 비율이 상기 제2 문턱값 이하인 경우, 상기 메인 메모리 셀들은 상기 제2 데이터를 저장하도록 결정(단계 S222)된 경우, 온-칩 버퍼드 동작 중 상기 로딩 동작들(PTA, PTB, PTC)의 수행 후에, 페이지 버퍼(170)에 로딩된 페이지 데이터는 그대로 메인 메모리 셀 어레이(142)에 포함되는 메인 메모리 셀들에 로딩(PTD)될 수 있다.
도 14는 도 12의 순서도의 상기 온-셀들의 상기 비율을 설명하는 그래프이다.
도 14를 참조하면, 도 3의 메모리 시스템(100)에 포함되는 버퍼 메모리 셀 어레이(141)는 제1 버퍼 메모리 셀들을 포함할 수 있다.
상기 제1 버퍼 메모리 셀들의 각각은 논리값 0에 상응하는 제1 논리 상태 또는 논리값 1에 상응하는 제2 논리 상태를 가질 수 있다. 일반적인 경우, 버퍼 메모리 셀 어레이(141)에는 논리값 0과 논리값 1이 동일한 확률로 사용된다.
상기 제1 버퍼 메모리 셀들에 독출 디스터브가 발생하지 않은 경우, 상기 제1 버퍼 메모리 셀들은 상기 제1 및 제2 논리 상태들에 상응하는 제1 문턱 전압 분포들(511, 521)을 가진다. 상기 제1 버퍼 메모리 셀들에 독출 디스터브가 발생한 경우, 상기 제1 버퍼 메모리 셀들은 제2 문턱 전압 분포들(512, 522)을 가진다. 제2 문턱 전압 분포들(512, 522)은 제1 문턱 전압 분포들(511, 512)보다 흩어져있고, 오른쪽으로 이동되어 있는 것을 알 수 있다.
검증 독출 전압(VRD)은 상기 제1 논리 상태에 상응하는 제1 문턱 전압 분포(511)와 상기 제2 논리 상태에 상응하는 제2 문턱 전압 분포(521)의 사이에 위치할 수 있다.
상기 제1 버퍼 메모리 셀들에 독출 디스터브가 발생하지 않아 상기 제1 버퍼 메모리 셀들이 제1 문턱 전압 분포들(511, 521)을 가지고. 검증 독출 전압(VRD)을 상기 제1 버퍼 메모리 셀들에 인가한 경우, 상기 제1 버퍼 메모리 셀들 중 검증 독출 전압(VRD)보다 낮은 문턱 전압을 가지는 온-셀들의 비율은 확률적으로 1/2이다.
상기 제1 버퍼 메모리 셀들에 독출 디스터브가 발생하여 상기 제1 버퍼 메모리 셀들이 제2문턱 전압 분포들(512 522)을 가지고, 검증 독출 전압(VRD)을 상기 제1 버퍼 메모리 셀들에 인가한 경우, 상기 제1 버퍼 메모리 셀들 중 검증 독출 전압(VRD)보다 낮은 문턱 전압을 가지는 온-셀들의 비율은 확률적으로 1/2보다 낮다.
상기 온-셀들의 상기 비율이 1/2에 가까운 경우, 상기 제1 버퍼 메모리 셀들은 안전하다고 판단될 수 있다. 상기 온-셀들의 상기 비율이 1/2보다 현저히 작은 경우, 상기 제1 버퍼 메모리 셀들은 신뢰할 수 없다고 판단될 수 있다.
도 15는 본 발명의 일 실시예에 따른 메모리 시스템을 나타내는 블록도이다.
도 15를 참조하면, 메모리 시스템(600)은 메모리 컨트롤러(610) 및 비휘발성 메모리 장치(620)를 포함한다. 비휘발성 메모리 장치(620)는 메모리 셀 어레이(621) 및 데이터 입출력 회로(622)를 포함한다. 메모리 셀 어레이(621)는 기판 상에 삼차원 구조로 형성될 수 있다. 삼차원 구조로 형성된 메모리 셀 어레이(621)는 도 4 및 5를 참조하여 이해할 수 있으므로 설명을 생략한다.
데이터 입출력 회로(622)는 상기 복수의 비트 라인들을 통해 메모리 셀 어레이(621)에 연결된다. 데이터 입출력 회로(622)는 상기 복수의 비트라인들 중의 적어도 하나를 선택하고, 상기 선택된 적어도 하나의 비트라인에 연결되는 메모리 셀로부터 독출되는 데이터를 메모리 컨트롤러(610)로 출력하고, 메모리 컨트롤러(610)로부터 입력되는 데이터를 상기 선택된 적어도 하나의 비트라인에 연결되는 메모리 셀에 기입할 수 있다.
비휘발성 메모리 장치(620), 메모리 셀 어레이(621) 및 데이터 입/출력 회로(622) 각각은 도 3의 메모리 시스템(100)에 포함되는 비휘발성 메모리 장치(130), 메모리 셀 어레이(140) 및 데이터 입/출력 회로(170)에 대응될 수 있다. 비휘발성 메모리 장치(130), 메모리 셀 어레이(140) 및 데이터 입/출력 회로(170)에 대하여 도 3을 참조하여 상세히 설명하였으므로, 여기서는 비휘발성 메모리 장치(620)에 대한 상세한 설명은 생략한다.
메모리 컨트롤러(610)는 비휘발성 메모리 장치(620)를 제어한다. 메모리 컨트롤러(610)는 외부의 호스트와 비휘발성 메모리 장치(620) 사이의 데이터 교환을 제어할 수 있다.
메모리 컨트롤러(610)는 중앙 처리 장치(611), 버퍼 메모리(612), 호스트 인터페이스(613) 및 메모리 인터페이스(614)를 포함할 수 있다.
중앙 처리 장치(611)는 상기 데이터 교환을 위한 동작을 수행할 수 있다. 버퍼 메모리(612)는 DRAM(Dynamic random access memory), SRAM(Static random access memory), PRAM(Phase random access memory), FRAM(Ferroelectric random access memory), RRAM(Resistive random access memory), 또는 MRAM(Magnetic random access memory)으로 구현될 수 있다.
버퍼 메모리(612)는 중앙 처리 장치(611)의 동작 메모리일 수 있다. 실시예에 따라서, 버퍼 메모리(612)는 메모리 컨트롤러(610)의 내부 또는 외부에 위치할 수 있다. 버퍼 메모리(612)는 도 3의 메모리 시스템(100)에 포함되는 버퍼 메모리(BUFFER)에 대응될 수 있다.
호스트 인터페이스(613)는 상기 호스트와 연결되고, 메모리 인터페이스(614)는 비휘발성 메모리 장치(620)와 연결된다. 중앙 처리 장치(611)는 호스트 인터페이스(613)를 통하여 상기 호스트와 통신할 수 있다. 예를 들어, 호스트 인터페이스(613)는 USB(Universal Serial Bus), MMC(Multi-Media Card), PCI-E(Peripheral Component Interconnect-Express), SAS(Serial-attached SCSI), SATA(Serial Advanced Technology Attachment), PATA(Parallel Advanced Technology Attachment), SCSI(Small Computer System Interface), ESDI(Enhanced Small Disk Interface), IDE(Integrated Drive Electronics) 등과 같은 다양한 인터페이스 프로토콜들 중 적어도 하나를 통해 호스트와 통신하도록 구성될 수 있다.
또한, 중앙 처리 장치(611)는 메모리 인터페이스(614)를 통하여 비휘발성 메모리 장치(620)와 통신할 수 있다.
실시예에 따라서, 메모리 컨트롤러(610)는 스타트-업 코드를 저장하는 비휘발성 메모리 장치를 더 포함할 수 있고, 에러 정정을 위한 에러 정정 블록(615)을 더 포함할 수 있다. 에러 정정 블록(615)은 도 3의 메모리 시스템(100)에 포함되는 에러 정정 유닛(ECC)에 대응될 수 있다.
일 실시예에서, 메모리 컨트롤러(610)는 비휘발성 메모리 장치(620)에 빌트-인(built-in)되어 구현될 수 있다. 메모리 컨트롤러(610)가 빌트-인되어 구현된 NAND 플래시 메모리 장치를 원낸드 메모리 장치(One-NAND memory device)라 명명할 수 있다.
메모리 시스템(900)은 메모리 카드(memory card), 솔리드 스테이트 드라이브(solid state drive) 등과 같은 형태로 구현될 수 있다.
도 16은 본 발명의 일 실시예에 따른 메모리 카드를 나타내는 블록도이다.
도 16을 참조하면, 메모리 카드(700)는 복수의 접속 핀들(710), 메모리 컨트롤러(720) 및 비휘발성 메모리 장치(730)를 포함한다.
호스트와 메모리 카드(700) 사이의 신호들이 송수신되도록 복수의 접속 핀들(710)은 상기 호스트에 연결될 수 있다. 복수의 접속 핀들(710)은 클록 핀, 커맨드 핀, 데이터 핀 및/또는 리셋 핀을 포함할 수 있다.
메모리 컨트롤러(720)는 상기 호스트로부터 데이터를 수신하고, 상기 수신된 데이터를 비휘발성 메모리 장치(730)에 저장할 수 있다.
비휘발성 메모리 장치(730)는 기판상에 삼차원 구조로 형성되는 메모리 셀 어레이를 포함할 수 있다. 상기 메모리 셀 어레이에 포함되는 메모리 셀들은 상기 기판과 수직한 방향으로 형성될 수 있다. 상기 메모리 셀 어레이에 포함되는 상기 메모리 셀들은 상기 기판에 수직한 방향으로 상기 기판 상에 순차적으로 적층되는 복수의 워드라인들 및 상기 기판에 수평한 방향으로 형성되는 복수의 비트라인들에 연결될 수 있다.
비휘발성 메모리 장치(730)는 도 3의 메모리 시스템(100)에 포함되는 비휘발성 메모리 장치(130)에 대응될 수 있다. 비휘발성 메모리 장치(130)에 대하여 도 3을 참조하여 상세히 설명하였으므로, 여기서는 비휘발성 메모리 장치(730)에 대한 상세한 설명은 생략한다.
메모리 카드(700)는 멀티미디어 카드(MultiMedia Card; MMC), 임베디드 멀티미디어 카드(embedded MultiMedia Card; eMMC), 하이브리드 임베디드 멀티미디어 카드(hybrid embedded MultiMedia Card; hybrid eMMC), SD(Secure Digital) 카드, 마이크로SD 카드, 메모리 스틱(Memory Stick), ID 카드, PCMCIA(Personal Computer Memory Card International Association) 카드, 칩 카드(Chip Card), USB 카드, 스마트 카드(Smart Card), CF 카드(Compact Flash Card)등과 같은 메모리 카드일 수 있다.
실시예에 따라서, 메모리 카드(700)는 컴퓨터(computer), 노트북(laptop), 핸드폰(cellular phone), 스마트폰(smart phone), MP3 플레이어, 피디에이(Personal Digital Assistants; PDA), 피엠피(Portable Multimedia Player; PMP), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console) 등과 같은 호스트에 장착될 수 있다.
도 17은 본 발명의 일 실시예에 따른 솔리드 스테이트 드라이브 시스템을 나타내는 블록도이다.
도 17을 참조하면, 솔리드 스테이트 드라이브 시스템(800)은 호스트(810) 및 솔리드 스테이트 드라이브(820)를 포함한다.
솔리드 스테이트 드라이브(820)는 복수의 비휘발성 메모리 장치들(823-1, 823-2, ... , 823-n) 및 SSD 컨트롤러(822)를 포함한다.
복수의 비휘발성 메모리 장치들(823-1, 823-2, ... , 823-n)은 솔리드 스테이트 드라이브(820)의 저장 매체로서 사용된다.
복수의 비휘발성 메모리 장치들(823-1, 823-2, ... , 823-n) 각각은 기판상에 삼차원 구조로 형성되는 메모리 셀 어레이를 포함할 수 있다. 상기 메모리 셀 어레이에 포함되는 메모리 셀들은 상기 기판과 수직한 방향으로 형성될 수 있다. 상기 메모리 셀 어레이에 포함되는 상기 메모리 셀들은 상기 기판에 수직한 방향으로 상기 기판 상에 순차적으로 적층되는 복수의 워드라인들 및 상기 기판에 수평한 방향으로 형성되는 복수의 비트라인들에 연결될 수 있다.
복수의 비휘발성 메모리 장치들(823-1, 823-2, ... , 823-n) 각각은 도 3의 메모리 시스템(100)에 포함된 비휘발성 메모리 장치(130)로 구현될 수 있다. 비휘발성 메모리 장치(130)의 구성 및 동작에 대해서는 도 3을 참조하여 상세히 설명하였으므로, 여기서는 복수의 비휘발성 메모리 장치들(823-1, 823-2, ... , 823-n)에 대한 상세한 설명은 생략한다.
SSD 컨트롤러(822)는 복수의 채널들(CH1, CH2, ... , CHn)을 통해 복수의 비휘발성 메모리 장치들(823-1, 823-2, ... , 823-n)과 각각 연결된다.
SSD 컨트롤러(822)는 신호 커넥터(824)를 통해 호스트(810)와 신호(SGL)를 송수신한다. 여기에서, 신호(SGL)에는 커맨드, 어드레스, 데이터 등이 포함될 수 있다. SSD 컨트롤러(822)는 호스트(810)의 커맨드에 따라 복수의 비휘발성 메모리 장치들(823-1, 823-2, ... , 823-n)에 데이터를 쓰거나 복수의 비휘발성 메모리 장치들(823-1, 823-2, ... , 823-n)로부터 데이터를 읽어낸다.
솔리드 스테이트 드라이브(820)는 보조 전원 장치(826)를 더 포함할 수 있다. 보조 전원 장치(826)는 전원 커넥터(825)를 통해 호스트(810)로부터 전원(PWR)을 입력받아 SSD 컨트롤러(822)에 전원을 공급할 수 있다. 한편, 보조 전원 장치(826)는 솔리드 스테이트 드라이브(820) 내에 위치할 수도 있고, 솔리드 스테이트 드라이브(820) 밖에 위치할 수도 있다. 예를 들면, 보조 전원 장치(826)는 메인 보드에 위치하고, 솔리드 스테이트 드라이브(820)에 보조 전원을 제공할 수도 있다.
도 18은 본 발명의 일 실시예에 따른 모바일 시스템을 나타내는 블록도이다.
도 18을 참조하면, 모바일 시스템(900)은 어플리케이션 프로세서(910), 통신(Connectivity)부(920), 사용자 인터페이스(930), 비휘발성 메모리 장치(NVM)(940), 휘발성 메모리 장치(VM)(950) 및 파워 서플라이(960)를 포함한다.
실시예에 따라, 모바일 시스템(900)은 휴대폰(Mobile Phone), 스마트 폰(Smart Phone), 개인 정보 단말기(Personal Digital Assistant; PDA), 휴대형 멀티미디어 플레이어(Portable Multimedia Player; PMP), 디지털 카메라(Digital Camera), 음악 재생기(Music Player), 휴대용 게임 콘솔(Portable Game Console), 네비게이션(Navigation) 시스템 등과 같은 임의의 모바일 시스템일 수 있다.
어플리케이션 프로세서(910)는 인터넷 브라우저, 게임, 동영상 등을 제공하는 어플리케이션들을 실행할 수 있다. 실시예에 따라, 어플리케이션 프로세서(910)는 하나의 프로세서 코어(Single Core)를 포함하거나, 복수의 프로세서 코어들(Multi-Core)을 포함할 수 있다. 예를 들어, 어플리케이션 프로세서(910)는 듀얼 코어(Dual-Core), 쿼드 코어(Quad-Core), 헥사 코어(Hexa-Core) 등의 멀티 코어(Multi-Core)를 포함할 수 있다. 또한, 실시예에 따라, 어플리케이션 프로세서(910)는 내부 또는 외부에 위치한 캐시 메모리(Cache Memory)를 더 포함할 수 있다.
통신부(920)는 외부 장치와 무선 통신 또는 유선 통신을 수행할 수 있다. 예를 들어, 통신부(920)는 이더넷(Ethernet) 통신, 근거리 자기장 통신(Near Field Communication; NFC), 무선 식별(Radio Frequency Identification; RFID) 통신, 이동 통신(Mobile Telecommunication), 메모리 카드 통신, 범용 직렬 버스(Universal Serial Bus; USB) 통신 등을 수행할 수 있다. 예를 들어, 통신부(920)는 베이스밴드 칩 셋(Baseband Chipset)을 포함할 수 있고, GSM, GPRS, WCDMA, HSxPA 등의 통신을 지원할 수 있다.
비휘발성 메모리 장치(940)는 모바일 시스템(900)을 부팅하기 위한 부트 이미지를 저장할 수 있다.
비휘발성 메모리 장치(940)는 기판상에 삼차원 구조로 형성되는 메모리 셀 어레이를 포함할 수 있다. 상기 메모리 셀 어레이에 포함되는 메모리 셀들은 상기 기판과 수직한 방향으로 형성될 수 있다. 상기 메모리 셀 어레이에 포함되는 상기 메모리 셀들은 상기 기판에 수직한 방향으로 상기 기판 상에 순차적으로 적층되는 복수의 워드라인들 및 상기 기판에 수평한 방향으로 형성되는 복수의 비트라인들에 연결될 수 있다.
비휘발성 메모리 장치(940)는 도 3의 메모리 시스템(100)에 포함된 비휘발성 메모리 장치(130)로 구현될 수 있다. 비휘발성 메모리 장치(130)의 구성 및 동작에 대해서는 도 3을 참조하여 상세히 설명하였으므로, 여기서는 비휘발성 메모리 장치(940)에 대한 상세한 설명은 생략한다.
휘발성 메모리 장치(950)는 어플리케이션 프로세서(910)에 의해 처리되는 데이터를 저장하거나, 동작 메모리(Working Memory)로서 작동할 수 있다.
사용자 인터페이스(930)는 키패드, 터치 스크린과 같은 하나 이상의 입력 장치, 및/또는 스피커, 디스플레이 장치와 같은 하나 이상의 출력 장치를 포함할 수 있다.
파워 서플라이(960)는 모바일 시스템(900)의 동작 전압을 공급할 수 있다.
또한, 실시예에 따라, 모바일 시스템(900)은 이미지 프로세서를 더 포함할 수 있고, 메모리 카드(Memory Card), 솔리드 스테이트 드라이브(Solid State Drive; SSD), 하드 디스크 드라이브(Hard DiskDrive; HDD), 씨디롬(CD-ROM) 등과 같은 저장 장치를 더 포함할 수 있다.
모바일 시스템(900) 또는 모바일 시스템(900)의 구성요소들은 다양한 형태들의 패키지를 이용하여 실장될 수 있는데, 예를 들어, PoP(Package on Package), BGAs(Ball grid arrays), CSPs(Chip scale packages), PLCC(Plastic Leaded Chip Carrier), PDIP(Plastic Dual In-Line Package), Die in Waffle Pack, Die in Wafer Form, COB(Chip On Board), CERDIP(Ceramic Dual In-Line Package), MQFP(Plastic Metric Quad Flat Pack), TQFP(Thin Quad Flat-Pack), SOIC(Small Outline Integrated Circuit), SSOP(Shrink Small Outline Package), TSOP(Thin Small Outline Package), TQFP(Thin Quad Flat-Pack), SIP(System In Package), MCP(Multi Chip Package), WFP(Wafer-level Fabricated Package), WSP(Wafer-Level Processed Stack Package) 등과 같은 패키지들을 이용하여 실장될 수 있다.
본 발명은 온-칩 버퍼드 프로그램(OBP) 방식을 이용하여 프로그램하는 비휘발성 메모리 장치 및 이를 이용하는 다양한 전자 장치 및 시스템에 적용될 수 있다. 따라서, 본 발명은 비휘발성 메모리 장치를 구비하는 메모리 카드, 솔리드 스테이트 드라이브(Solid State Drive; SSD), 컴퓨터(computer), 노트북(laptop), 핸드폰(cellular), 스마트폰(smart phone), MP3 플레이어, 피디에이(Personal Digital Assistants; PDA), 피엠피(Portable Multimedia Player; PMP), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console) 등과 같은 전자 기기에 확대 적용될 수 있을 것이다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.

Claims (10)

  1. 입력된 제1 데이터를 저장하는 제1 버퍼 메모리 셀들 및 상기 제1 버퍼 메모리 셀들로부터 독출된 제2 데이터 또는 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하는 메인 메모리 셀들을 포함하는 비휘발성 메모리 장치의 동작 방법으로서,
    상기 비휘발성 메모리 장치에서 실행된 독출 커맨드들의 누적 횟수가 기준값에 도달할 때 상기 제1 버퍼 메모리 셀들에 포함되는 샘플 버퍼 메모리 셀들에 저장된 데이터를 샘플 데이터로서 독출하는 단계;
    에러 정정 코드(Error correction code)에 기초하여 상기 샘플 데이터에 포함된 에러들의 수를 계수하는 단계; 및
    상기 에러들의 수가 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계를 포함하는 비휘발성 메모리 장치의 동작 방법.
  2. 제1 항에 있어서,
    상기 에러들의 수가 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계를 더 포함하는 비휘발성 메모리 장치의 동작 방법.
  3. 제2 항에 있어서,
    메모리 콘트롤러는 상기 독출 커맨드들을 생성하고, 상기 기준값은 상기 메모리 콘트롤러에 의해 랜덤한 수로 결정되고,
    상기 에러들의 수가 상기 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계가 수행된 후 또는 상기 에러들의 수가 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 상기 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계가 수행된 후, 상기 독출 커맨드들의 상기 누적 횟수는 초기화되는 비휘발성 메모리 장치의 동작 방법.
  4. 제1 항에 있어서,
    상기 샘플 버퍼 메모리 셀들에 연결된 제1 워드 라인은 상기 독출 커맨드들 중 빈도가 높은 독출 커맨드에 상응하는 제2 워드 라인과 이웃하는 비휘발성 메모리 장치의 동작 방법.
  5. 제1 항에 있어서,
    상기 샘플 버퍼 메모리 셀들은 소거 동작이 수행된 버퍼 메모리 셀들인 비휘발성 메모리 장치의 동작 방법.
  6. 제1 항에 있어서,
    상기 에러들의 수가 상기 제1 문턱값 이하인 경우, 상기 에러들의 수에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계는,
    상기 에러들의 수가 제2 문턱값을 초과하는 경우, 상기 메인 메모리 셀들은 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하도록 결정하는 단계; 및
    상기 에러들의 수가 상기 제2 문턱값 이하인 경우, 상기 메인 메모리 셀들은 상기 제2 데이터를 저장하도록 결정하는 단계를 포함하는 비휘발성 메모리 장치의 동작 방법.
  7. 제1 항에 있어서,
    상기 제1 버퍼 메모리 셀들의 각각은 하나의 데이터 비트를 저장하는 싱글 레벨 셀(Single Level Cell)이고, 상기 메인 메모리 셀들의 각각은 두 개의 비트 데이터들을 저장하는 멀티 레벨 셀(Multi Level Cell) 또는 세 개의 비트 데이터들을 저장하는 트리플 레벨 셀(Triple Level Cell)인 비휘발성 메모리 장치의 동작 방법.
  8. 각각 싱글 레벨 셀이고 입력된 제1 데이터를 저장하는 제1 버퍼 메모리 셀들 및 상기 제1 버퍼 메모리 셀들로부터 독출된 제2 데이터 또는 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하는 메인 메모리 셀들을 포함하는 비휘발성 메모리 장치의 동작 방법으로서,
    상기 비휘발성 메모리 장치에서 실행된 독출 커맨드들의 누적 횟수가 기준값에 도달할 때 상기 제1 버퍼 메모리 셀들에 포함되는 샘플 버퍼 메모리 셀들에 연결된 제1 워드 라인에 검증 독출 전압을 인가하고, 상기 샘플 버퍼 메모리 셀들 중 상기 검증 독출 전압보다 낮은 문턱 전압을 가지는 온-셀들의 비율을 측정하는 단계; 및
    상기 온-셀들의 상기 비율이 제1 문턱값 이하인 경우, 상기 온-셀들의 상기 비율에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계를 포함하는 비휘발성 메모리 장치의 동작 방법.
  9. 제8 항에 있어서,
    상기 온-셀들의 상기 비율이 상기 제1 문턱값을 초과하는 경우, 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 상기 비휘발성 메모리 장치에 포함되는 제2 버퍼 메모리 셀들에 저장하도록 결정하는 단계를 더 포함하는 비휘발성 메모리 장치의 동작 방법.
  10. 제9 항에 있어서,
    상기 온-셀들의 상기 비율이 상기 제1 문턱값 이하인 경우, 상기 온-셀들의 상기 비율에 기초하여 상기 메인 메모리 셀들이 상기 제2 데이터와 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터 중 어떤 데이터를 저장할 지 결정하는 단계는,
    상기 온-셀들의 상기 비율이 제2 문턱값을 초과하는 경우, 상기 메인 메모리 셀들은 상기 정정 절차를 통해 상기 제2 데이터로부터 복원된 제1 데이터를 저장하도록 결정하는 단계; 및
    상기 온-셀들의 상기 비율이 상기 제2 문턱값 이하인 경우, 상기 메인 메모리 셀들은 상기 제2 데이터를 저장하도록 결정하는 단계를 포함하는 비휘발성 메모리 장치의 동작 방법.
KR1020140099195A 2014-08-01 2014-08-01 비휘발성 메모리 장치의 동작 방법 KR102178141B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140099195A KR102178141B1 (ko) 2014-08-01 2014-08-01 비휘발성 메모리 장치의 동작 방법
US14/697,381 US9501343B2 (en) 2014-08-01 2015-04-27 Method of operating non-volatile memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140099195A KR102178141B1 (ko) 2014-08-01 2014-08-01 비휘발성 메모리 장치의 동작 방법

Publications (2)

Publication Number Publication Date
KR20160016037A true KR20160016037A (ko) 2016-02-15
KR102178141B1 KR102178141B1 (ko) 2020-11-12

Family

ID=55180132

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140099195A KR102178141B1 (ko) 2014-08-01 2014-08-01 비휘발성 메모리 장치의 동작 방법

Country Status (2)

Country Link
US (1) US9501343B2 (ko)
KR (1) KR102178141B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200049506A (ko) * 2018-10-30 2020-05-08 웨스턴 디지털 테크놀로지스, 인코포레이티드 호스트 dram을 이용함으로써 ssd 내구성을 향상시키기 위한 방법

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10303623B2 (en) 2016-04-08 2019-05-28 Cryptography Research, Inc. Non-volatile memory for secure storage of authentication data
KR20170143084A (ko) * 2016-06-17 2017-12-29 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
KR102661936B1 (ko) * 2016-06-27 2024-04-30 삼성전자주식회사 저장 장치
US10652257B1 (en) * 2016-07-11 2020-05-12 State Farm Mutual Automobile Insurance Company Detection of anomalous computer behavior
KR102507302B1 (ko) * 2018-01-22 2023-03-07 삼성전자주식회사 스토리지 장치 및 상기 스토리지 장치의 동작 방법
KR102610821B1 (ko) * 2018-11-15 2023-12-06 삼성전자주식회사 내구성 저하를 판단하는 메모리 컨트롤러, 이를 포함하는 메모리 시스템 및 메모리 컨트롤러의 동작방법
JP2021033687A (ja) * 2019-08-26 2021-03-01 キオクシア株式会社 メモリシステム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130012308A (ko) * 2011-07-25 2013-02-04 삼성전자주식회사 비휘발성 메모리 장치의 프로그램 방법
KR20130036851A (ko) * 2011-10-05 2013-04-15 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 동작 방법
KR20140020010A (ko) * 2012-08-07 2014-02-18 삼성전자주식회사 데이터 저장 장치의 동작 방법, 데이터 저장 장치 및 이를 이용한 시스템

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5365486A (en) 1992-12-16 1994-11-15 Texas Instruments Incorporated Method and circuitry for refreshing a flash electrically erasable, programmable read only memory
JP3913704B2 (ja) 2003-04-22 2007-05-09 株式会社東芝 不揮発性半導体記憶装置及びこれを用いた電子装置
US7181649B2 (en) * 2003-05-09 2007-02-20 Stmicroelectronics, Inc. Universal serial bus (USB) smart card having enhanced testing features and related system, integrated circuit, and methods
US7802166B2 (en) * 2006-09-27 2010-09-21 Qimonda Ag Memory controller, memory circuit and memory system with a memory controller and a memory circuit
US7499320B2 (en) 2007-03-07 2009-03-03 Sandisk Corporation Non-volatile memory with cache page copy
US7477547B2 (en) 2007-03-28 2009-01-13 Sandisk Corporation Flash memory refresh techniques triggered by controlled scrub data reads
US7567455B2 (en) 2007-06-19 2009-07-28 Micron Technology, Inc. Method and system for programming non-volatile memory cells based on programming of proximate memory cells
US7808831B2 (en) 2008-06-30 2010-10-05 Sandisk Corporation Read disturb mitigation in non-volatile memory
US8347155B2 (en) * 2009-04-17 2013-01-01 Lsi Corporation Systems and methods for predicting failure of a storage medium
KR101126514B1 (ko) 2009-12-31 2012-03-29 주식회사 하이닉스반도체 반도체 메모리 장치 및 그 독출 방법
KR101810640B1 (ko) 2010-11-26 2017-12-20 삼성전자주식회사 불휘발성 메모리 장치 및 메모리 시스템 그리고 그것의 읽기 방법
US8635514B2 (en) * 2011-02-28 2014-01-21 Micron Technology, Inc. Error control in memory storage systems
KR101913291B1 (ko) 2011-09-09 2018-12-28 삼성전자주식회사 비휘발성 메모리 장치, 그 데이터 판독 방법 및 기록 매체
KR102089532B1 (ko) 2013-02-06 2020-03-16 삼성전자주식회사 메모리 컨트롤러, 메모리 시스템 및 메모리 시스템의 동작 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130012308A (ko) * 2011-07-25 2013-02-04 삼성전자주식회사 비휘발성 메모리 장치의 프로그램 방법
KR20130036851A (ko) * 2011-10-05 2013-04-15 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 동작 방법
KR20140020010A (ko) * 2012-08-07 2014-02-18 삼성전자주식회사 데이터 저장 장치의 동작 방법, 데이터 저장 장치 및 이를 이용한 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200049506A (ko) * 2018-10-30 2020-05-08 웨스턴 디지털 테크놀로지스, 인코포레이티드 호스트 dram을 이용함으로써 ssd 내구성을 향상시키기 위한 방법

Also Published As

Publication number Publication date
US9501343B2 (en) 2016-11-22
KR102178141B1 (ko) 2020-11-12
US20160034327A1 (en) 2016-02-04

Similar Documents

Publication Publication Date Title
US9991007B2 (en) Nonvolatile memory device and a method of operating the same
US9666292B2 (en) Method of determining default read voltage of non-volatile memory device and method of reading data of non-volatile memory device
CN108573722B (zh) 操作非易失性存储器件的方法和非易失性存储器件
US9640281B1 (en) Memory system and operating method thereof
CN107305791B (zh) 存储装置和存储系统
KR102178141B1 (ko) 비휘발성 메모리 장치의 동작 방법
KR102048765B1 (ko) 메모리 시스템의 동작 방법 및 메모리 시스템
KR102294127B1 (ko) 누설 전류 감지 장치 및 이를 포함하는 비휘발성 메모리 장치
US9213598B2 (en) Nonvolatile memory device and method of operating the same
CN107369470B (zh) 存储设备的编程方法和使用其的存储系统
KR20120001405A (ko) 메모리 시스템 및 그것의 웨어 레벨링 방법
CN111258793B (zh) 存储器控制器及其操作方法
KR20110131648A (ko) 비휘발성 메모리 장치, 그것을 포함한 메모리 시스템 및 메모리 카드 및 그것의 프로그램 방법
KR20160112135A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20170126595A (ko) 불휘발성 메모리 장치의 독출 방법
US8760919B2 (en) Nonvolatile memory device and method of reading data in nonvolatile memory device
KR20170076878A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20210129928A (ko) 메모리 장치 및 메모리 장치의 동작방법
KR20160124575A (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법과 독출 방법
KR20220008058A (ko) 컨트롤러 및 컨트롤러의 동작방법
KR20180021284A (ko) 메모리 시스템 및 메모리 시스템의 동작방법
KR20170014496A (ko) 메모리 시스템 및 그의 동작방법
CN111540399A (zh) 存储器系统及其操作方法
KR102187524B1 (ko) 비휘발성 메모리 장치 및 이의 동작 방법
KR102110844B1 (ko) 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 프로그램 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right