KR20240052367A - 메모리 장치 및 이의 동작 방법 - Google Patents

메모리 장치 및 이의 동작 방법 Download PDF

Info

Publication number
KR20240052367A
KR20240052367A KR1020220132326A KR20220132326A KR20240052367A KR 20240052367 A KR20240052367 A KR 20240052367A KR 1020220132326 A KR1020220132326 A KR 1020220132326A KR 20220132326 A KR20220132326 A KR 20220132326A KR 20240052367 A KR20240052367 A KR 20240052367A
Authority
KR
South Korea
Prior art keywords
sub
block
program
memory device
erase
Prior art date
Application number
KR1020220132326A
Other languages
English (en)
Inventor
이동욱
김윤철
양해창
Original Assignee
에스케이하이닉스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이하이닉스 주식회사 filed Critical 에스케이하이닉스 주식회사
Priority to KR1020220132326A priority Critical patent/KR20240052367A/ko
Priority to US18/296,789 priority patent/US20240127892A1/en
Publication of KR20240052367A publication Critical patent/KR20240052367A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • G11C11/5635Erasing 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/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/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • GPHYSICS
    • 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/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically

Landscapes

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

Abstract

본 기술은 복수의 서브 블록들을 포함하는 메모리 블록; 상기 서브 블록들 중 제1 서브 블록에 제1 방식으로 프로그램 및 소거 동작을 수행하고, 제2 서브 블록에 제2 방식으로 프로그램 및 소거 동작을 수행하도록 구성된 주변 회로; 및 상기 제2 서브 블록에서 수행된 상기 프로그램 및 소거 동작의 싸이클링 횟수가 기준 횟수 이상이면, 상기 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하는 보상 동작이 수행되도록 상기 주변 회로를 제어하는 제어 회로를 포함하는 메모리 장치 및 이의 동작 방법을 포함한다.

Description

메모리 장치 및 이의 동작 방법{Memory device and operating method of the memory device}
본 발명은 메모리 장치 및 이의 동작 방법에 관한 것으로, 보다 구체적으로 프로그램 또는 소거 동작을 수행하도록 구성된 메모리 장치 및 이의 동작 방법에 관한 것이다.
메모리 장치는 데이터가 저장되는 메모리 셀 어레이(memory cell array)와, 프로그램, 리드 또는 소거 동작을 수행하도록 구성된 주변 회로(peripheral circuit) 및 주변 회로를 제어하는 제어 로직을 포함할 수 있다.
메모리 셀 어레이는 복수의 메모리 블록들을 포함할 수 있으며, 복수의 메모리 블록들 각각은 복수의 스트링들을 포함할 수 있다. 스트링들 각각은 메모리 셀들을 포함할 수 있다. 3차원 구조로 형성된 메모리 장치에서 스트링들은 기판 상에 수직 방향으로 연장될 수 있다. 따라서, 메모리 셀들은 기판 상에 수직 방향으로 적층될 수 있다.
복수의 메모리 블록들 각각은 복수의 서브 블록들을 포함할 수 있다. 복수의 서브 블록들은 서로 다른 방식으로 프로그램될 수 있다. 예를 들면, 복수의 서브 블록들은 SLC(single level cell) 방식, MLC(multi level cell) 방식, TLC(triple level cell) 방식 또는 QLC(quad level cell) 방식 등으로 프로그램될 수 있다. 복수의 서브 블록들이 서로 다른 방식에 따라 순차적으로 프로그램되는 경우, 서로 다른 방식의 프로그램 동작들에서 사용되는 전압 및 메모리 셀들의 문턱전압 차이로 인해 일부 서브 블록에 포함된 메모리 셀들의 문턱전압이 변경될 수 있다.
본 발명의 실시예는 신뢰도를 개선할 수 있는 메모리 장치 및 이의 동작 방법을 제공한다.
본 발명의 실시 예에 따른 메모리 장치는, 복수의 서브 블록들을 포함하는 메모리 블록; 상기 서브 블록들 중 제1 서브 블록에 제1 방식으로 프로그램 및 소거 동작을 수행하고, 제2 서브 블록에 제2 방식으로 프로그램 및 소거 동작을 수행하도록 구성된 주변 회로; 및 상기 제2 서브 블록에서 수행된 상기 프로그램 및 소거 동작의 싸이클링 횟수가 기준 횟수 이상이면, 상기 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하는 보상 동작이 수행되도록 상기 주변 회로를 제어하는 제어 회로를 포함한다.
본 발명의 실시 예에 따른 메모리 장치의 동작 방법은, 메모리 블록에 포함된 제1 서브 블록에 제1 방식으로 프로그램 동작 및 소거 동작을 수행하는 단계; 상기 메모리 블록에 포함된 제2 서브 블록에 제2 방식으로 프로그램 동작 및 소거 동작을 수행하는 단계; 상기 제2 서브 블록에서 수행된 상기 프로그램 동작 및 소거 동작의 싸이클링 횟수를 기준 횟수와 비교하는 단계; 및 상기 싸이클링 횟수가 상기 기준 횟수 이상이면, 상기 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하는 보상 동작을 수행하는 단계를 포함한다.
본 발명의 실시 예에 따른 메모리 장치는, 복수의 서브 블록들을 포함하는 메모리 블록; 상기 서브 블록들 중 제1 서브 블록에 제1 방식으로 프로그램 동작을 수행하고, 제2 서브 블록에 제2 방식으로 프로그램 동작을 수행하도록 구성된 주변 회로; 및 상기 제2 서브 블록에서 수행되는 상기 프로그램 동작의 프로그램 횟수가 기준 횟수 이상이면, 상기 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하는 보상 동작이 수행되도록 상기 주변 회로를 제어하는 제어 회로를 포함한다.
본 발명의 실시 예에 따른 메모리 장치의 동작 방법은, 메모리 블록에 포함된 제1 서브 블록에 제1 방식으로 프로그램 동작을 수행하는 단계; 상기 메모리 블록에 포함된 제2 서브 블록에 제2 방식으로 프로그램 동작을 수행하는 단계; 상기 제2 서브 블록에서 수행된 상기 프로그램 동작의 프로그램 횟수를 기준 횟수와 비교하는 단계; 및 상기 프로그램 횟수가 상기 기준 횟수 이상이면, 상기 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하는 보상 동작을 수행하는 단계를 포함한다.
본 기술은 서브 블록들로 구성된 메모리 블록을 포함하는 메모리 장치의 신뢰도를 개선할 수 있다.
도 1은 메모리 장치를 설명하기 위한 도면이다.
도 2는 도 1에 도시된 메모리 블록들 중 어느 하나의 메모리 블록을 설명하기 위한 회로도이다.
도 3은 서브 블록들을 포함하는 메모리 블록을 설명하기 위한 도면이다.
도 4a 내지 도 4c는 서로 다른 방식으로 프로그램된 메모리 셀들의 문턱전압 분포를 설명하기 위한 도면들이다.
도 5는 본 발명의 제1 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 6a 내지 도 6d는 제1 실시 예에 따라 프로그램 또는 소거되는 서브 블록들을 설명하기 위한 도면들이다.
도 7a 내지 도 7c는 오프셋 설정 전과 후의 프로그램 전압들을 설명하기 위한 도면들이다.
도 8a 및 도 8b는 오프셋 설정 전과 후의 소거 전압들을 설명하기 위한 도면들이다.
도 9는 본 발명의 제1 실시 예에 따른 효과를 설명하기 위한 도면이다.
도 10은 본 발명의 제2 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 11은 본 발명의 제2 실시 예에 따른 효과를 설명하기 위한 도면이다.
도 12는 본 발명의 제3 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 13은 본 발명의 제4 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 14는 본 발명의 제5 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 15는 본 발명의 제6 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 16은 본 발명의 메모리 장치가 적용된 메모리 카드 시스템을 설명하기 위한 도면이다.
도 17은 본 발명의 메모리 장치가 적용된 SSD(Solid State Drive) 시스템을 설명하기 위한 도면이다.
이하에 개시된 특정한 구조적 또는 기능적 설명들은 본 발명의 개념에 따른 실시 예를 설명하기 위해 예시된 것이다. 본 발명의 개념에 따른 실시 예는 이하에 설명된 실시 예들에 한정되는 것으로 해석되지 않고, 다양하게 변형될 수 있고 균등한 다른 실시 예로 대체될 수 있다.
이하에서 제1 및 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되지 않는다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로 사용된다.
도 1은 메모리 장치를 설명하기 위한 도면이다.
도 1을 참조하면, 메모리 장치(memory device; 100)는 메모리 셀 어레이(memory cell array; 110), 주변 회로(peripheral circuit; 170) 및 제어 회로(control circuit; 180)를 포함할 수 있다.
메모리 셀 어레이(110)는 제1 내지 제j 메모리 블록들(BLK1~BLKj)을 포함할 수 있다. 제1 내지 제j 메모리 블록들(BLK1~BLKj)은 3차원 구조로 형성될 수 있다. 3차원 구조로 형성된 제1 내지 제j 메모리 블록들(BLK1~BLKj)은 기판에 수직 방향으로 적층된 메모리 셀들을 포함할 수 있다.
메모리 셀들은 프로그램 방식에 따라 1 비트 또는 2 비트 이상의 데이터를 저장할 수 있다. 예를 들면, 하나의 메모리 셀에 1 비트의 데이터가 저장되는 방식은 싱글 레벨 셀(single level cell; SLC) 방식이라 하고, 2 비트의 데이터가 저장되는 방식은 멀티 레벨 셀(multi level cell; MLC) 방식이라 한다. 하나의 메모리 셀에 3 비트의 데이터가 저장되는 방식은 트리플 레벨 셀(triple level cell; TLC) 방식이라 하고, 4 비트의 데이터가 저장되는 방식은 쿼드 레벨 셀(quad level cell; QLC) 방식이라 한다. 이 외에도 하나의 메모리 셀에 5 비트 이상의 데이터가 저장될 수도 있다.
주변 회로(170)는 메모리 셀 어레이(110)에 데이터를 저장하기 위한 프로그램 동작(program operation), 메모리 셀 어레이(110)에 저장된 데이터를 출력하기 위한 리드 동작(read operation), 그리고 메모리 셀 어레이(110)에 저장된 데이터를 소거하기 위한 소거 동작(erase operation)을 수행하도록 구성될 수 있다. 예를 들면, 주변 회로(170)는 전압 생성기(voltage generator; 120), 로우 디코더(row decoder; 130), 페이지 버퍼 그룹(page buffer group; 140), 컬럼 디코더(column decoder; 150) 및 입출력 회로(input/output circuit; 160)를 포함할 수 있다.
전압 생성기(120)는 동작 코드(OPCD)에 응답하여 프로그램 동작, 리드 동작 또는 소거 동작에 사용되는 다양한 동작 전압들(Vop)을 생성할 수 있다. 예를 들면, 전압 생성기(120)는 동작 코드(OPCD)에 응답하여 프로그램 전압들(program voltages), 패스 전압들(pass voltages), 턴온 전압들(turn on voltages), 턴오프 전압들(turn off voltages), 접지 전압(ground voltage), 음전압들(negative voltages), 소스 전압들(source voltages), 검증 전압들(verify voltages), 리드 전압들(read voltages), 소거 전압들(erase voltages) 및 프리차지 전압(precharge voltage) 등을 생성하도록 구성될 수 있다.
프로그램 전압들은 프로그램 동작 시 워드 라인들(WL) 중 선택된 워드 라인에 인가되는 전압들로써, 선택된 워드 라인에 연결된 메모리 셀들의 문턱 전압을 높이는데 사용될 수 있다.
패스 전압들은 프로그램 또는 리드 동작 시, 워드 라인들(WL) 중 비선택된 워드 라인들에 인가되는 전압들로써, 비선택된 워드 라인들에 연결된 메모리 셀들을 턴온시키기 위해 사용될 수 있다. 본 실시 예에 따르면, 리드 동작 시, 전압 생성기(120)는 선택된 워드 라인의 위치에 따라 패스 전압들의 레벨을 조절할 수 있다.
턴온 전압들은 드레인 선택 라인(DSL) 또는 소스 선택 라인(SSL)에 인가되는 전압들로써, 드레인 선택 트랜지스터들 또는 소스 선택 트랜지스터들을 턴온시키기 위해 사용될 수 있다. 턴오프 전압들은 드레인 선택 라인(DSL) 또는 소스 선택 라인(SSL)에 인가되는 전압으로써, 드레인 선택 트랜지스터들 또는 소스 선택 트랜지스터들을 턴오프시키기 위해 사용될 수 있다.
접지 전압은 0V 전압일 수 있고, 음전압은 0V 보다 낮은 전압일 수 있다. 소스 전압들은 소스 라인(SL)에 인가되는 전압들로써, 음전압, 접지 전압 또는 양전압일 수 있다.
검증 전압들은 프로그램 또는 소거 동작 시 선택된 메모리 셀들의 문턱 전압을 판단하기 위한 전압으로써, 선택된 워드 라인 또는 선택된 메모리 블록에 연결된 모든 워드 라인들에 인가될 수 있다. 리드 전압들은 리드 동작 시 선택된 워드 라인에 인가되는 전압들로써, 메모리 셀들에 저장된 데이터를 판단하기 위해 사용될 수 있다.
소거 전압들은 소거 동작 시 소스 라인(SL)에 인가되는 전압들로써, 메모리 셀들의 문턱 전압을 낮추는데 사용될 수 있다. 프리차지 전압은 검증 또는 리드 동작 시 비선택된 스트링들의 채널을 프리차지하기 위한 양전압으로써, 소스 라인(SL)에 공급될 수 있다.
전압 생성기(120)는 동작 코드(OPCD)에 응답하여 동작 전압들(Vop)을 생성하므로, 동작 코드(OPCD)에 따라 동작 전압들(Vop)의 레벨을 조절할 수 있고, 동작 전압들(Vop)을 로우 디코더(130)로 출력하는 시간을 조절할 수 있다. 전압 생성기(120)는 동작 코드(OPCD)에 응답하여 디폴트(default)로 설정된 동작 전압들(Vop) 중 일부 전압에 오프셋(offset)을 설정할 수 있다. 예를 들면, 전압 생성기(120)는 프로그램 전압을 높이기 위한 스텝 전압에 오프셋이 설정되면, 설정된 오프셋이 적용된 스텝 전압에 따라 프로그램 전압을 단계적으로 높일 수 있다. 전압 생성기(120)는 시작 프로그램 전압에도 오프셋을 설정하고, 오프셋이 설정된 프로그램 전압을 생성 및 출력할 수 있다. 소거 동작에서도 오프셋이 설정되면, 전압 생성기(120)는 오프셋이 설정된 소거 전압을 생성 및 출력할 수 있다.
로우 디코더(130)는 글로벌 라인들(global lines)을 통해 전압 생성기(120)에 연결될 수 있고, 드레인 선택 라인들(DSL), 워드 라인들(WL), 소스 선택 라인들(SSL) 및 소스 라인(SL)을 통해 제1 내지 제j 메모리 블록들(BLK1~BLKj)에 연결될 수 있다. 로우 디코더(130)는 로우 어드레스(RADD)에 따라 선택된 메모리 블록에 연결된 드레인 선택 라인들(DSL), 워드 라인들(WL), 소스 선택 라인들(SSL) 및 소스 라인(SL)에 동작 전압들(Vop)을 전송하도록 구성될 수 있다.
페이지 버퍼 그룹(140)은 제1 내지 제j 메모리 블록들(BLK1~BLKj)에 공통으로 연결된 페이지 버퍼들(미도시)을 포함할 수 있다. 예를 들면, 페이지 버퍼들(미도시) 각각은 비트 라인들(BL)을 통해 제1 내지 제j 메모리 블록들(BLK1~BLKj)에 연결될 수 있다. 페이지 버퍼들(미도시)은 페이지 버퍼 제어 신호들(PBSIG)에 응답하여, 비트 라인들(BL)의 전류 또는 전압을 센싱(sensing)할 수 있다.
컬럼 디코더(150)는 컬럼 어드레스(CADD)에 응답하여 페이지 버퍼 그룹(140)과 입출력 회로(160) 사이에서 데이터를 전송하도록 구성될 수 있다. 예를 들면, 컬럼 디코더(150)는 컬럼 라인들(column lines; CL)을 통해 페이지 버퍼 그룹(140)에 연결될 수 있고, 컬럼 라인들(CL)에 인에이블 신호들을 인가하여 페이지 버퍼 그룹(140)에 포함된 페이지 버퍼들(미도시)과 입출력 회로(160) 사이에서 데이터가 전송되도록 할 수 있다.
입출력 회로(160)는 입출력 라인들(I/O)을 통해 커맨드(CMD), 어드레스(ADD) 또는 데이터를 수신하거나 출력하도록 구성될 수 있다. 예를 들면, 입출력 회로(160)는 입출력 라인들(I/O)을 통해 외부의 컨트롤러(controller)로부터 수신된 커맨드(CMD) 및 어드레스(ADD)를 제어 회로(180)에게 전송할 수 있고, 입출력 라인들(I/O)을 통해 외부의 컨트롤러(controller)로부터 수신된 데이터를 컬럼 디코더(150)로 전송할 수 있다. 입출력 회로(160)는 페이지 버퍼 그룹(140)으로부터 전달받은 데이터를 입출력 라인들(I/O)을 통해 외부의 컨트롤러(controller)에게 출력하거나, 외부의 컨트롤러로부터 수신한 데이터를 데이터 라인들(DL)을 통해 페이지 버퍼 그룹(140)으로 전달할 수 있다.
제어 회로(180)는 커맨드(CMD) 및 어드레스(ADD)에 응답하여 동작 코드(OPCD), 로우 어드레스(RADD), 페이지 버퍼 제어 신호들(PBSIG) 및 컬럼 어드레스(CADD)를 출력하도록 구성될 하드웨어와, 다양한 알고리즘들을 실행하기 위한 소프트웨어를 포함할 수 있다. 제어 회로(180)에 입력된 커맨드(CMD)가 프로그램 동작에 대응되는 커맨드인 경우, 제어 회로(180)는 프로그램 알고리즘을 실행하여 어드레스(ADD)에 의해 선택된 메모리 블록의 프로그램 동작이 수행되도록 주변 회로(170)를 제어할 수 있다. 제어 회로(180)에 입력된 커맨드(CMD)가 리드 동작에 대응되는 커맨드인 경우, 제어 회로(180)는 리드 알고리즘을 실행하여 어드레스에 의해 선택된 메모리 블록의 리드 동작을 수행하고, 리드된 데이터를 출력하도록 주변 회로(170)를 제어할 수 있다. 제어 회로(180)에 입력된 커맨드(CMD)가 소거 동작에 대응되는 커맨드인 경우, 제어 회로(180)는 소거 알고리즘을 실행하여 선택된 메모리 블록의 소거 동작이 수행되도록 주변 회로(170)를 제어할 수 있다.
제어 회로(180)는 제1 내지 제j 메모리 블록들(BLK1~BLKj) 각각에 포함된 서브 블록들의 프로그램 횟수(program number), 소거 횟수(erase number) 또는 싸이클링 횟수(cycling number)를 카운트 할 수 있고, 카운트된 횟수에 따라 프로그램 또는 소거 동작에 사용되는 전압들에 오프셋(offset)이 설정되도록 동작 코드(OPCD)를 출력할 수 있다. 여기서, 싸이클링 횟수는 프로그램 및 소거 동작이 수행된 횟수를 의미한다. 예를 들면, 제어 회로(180)는 제1 및 제2 서브 블록들이 서로 다른 방식에 의해 순차적으로 프로그램되거나 프로그램된 후 소거 되면, 제2 서브 블록의 싸이클링 횟수 또는 프로그램 횟수에 따라 제1 서브 블록에 보상 동작이 수행되도록 주변 회로(170)를 제어할 수 있다. 보상 동작은 제2 서브 블록의 프로그램 또는 소거 동작에 의해 변경된 제1 서브 블록의 메모리 셀들의 문턱전압을 보상하기 위해 수행될 수 있다. 다시 말하면, 제2 서브 블록에서 수행된 동작으로 인해 제1 서브 블록의 메모리 셀들의 문턱전압이 변경된 경우, 제어 회로(180)는 제1 서브 블록에 재프로그램 또는 재소거 동작이 수행되도록 주변 회로(170)를 제어할 수 있다. 재프로그램 또는 재소거 동작 시, 제어 회로(180)는 재프로그램 또는 재소거 동작에 사용되는 전압에 오프셋을 설정할 수 있다. 예를 들면, 제어 회로(180)는 재프로그램 동작에 사용되는 스텝 전압에 오프셋을 설정하거나, 시작 프로그램 전압에 오프셋을 설정하거나, 소거 동작에 사용되는 소거 전압에 오프셋을 설정할 수 있다. 즉, 제어 회로(180)는 스텝 전압, 시작 프로그램 전압 또는 소거 전압에 오프셋이 설정되도록 동작 코드(OPCD)를 출력할 수 있고, 전압 생성기(120)가 동작 코드(OPCD)에 응답하여 오프셋이 설정된 전압들을 출력할 수 있다.
도 2는 도 1에 도시된 메모리 블록들 중 어느 하나의 메모리 블록을 설명하기 위한 회로도이다.
도 2를 참조하면, 도 1에 도시된 제1 내지 제j 메모리 블록들(BLK1~BLKj)은 서로 동일하게 구성되므로, 이 중에서 제1 메모리 블록(BLK1)이 일 예로 도시된다.
제1 메모리 블록(BLK1)은 제1 내지 제m 비트 라인들(BL1~BLm)과 소스 라인(SL) 사이에 연결된 스트링들(ST)을 포함한다. 제m 비트 라인(BLm)에 연결된 스트링(ST)을 예를 들어 설명하면, 스트링(ST)은 소스 선택 트랜지스터(SST), 제1 내지 제n 메모리 셀들(M1~Mn) 및 드레인 선택 트랜지스터(DST)를 포함할 수 있다. 도 2에 도시된 제1 메모리 블록(BLK1)은 메모리 블록의 구조를 개략적으로 설명하기 위한 도면이므로, 스트링(ST)에 포함된 소스 선택 트랜지스터(SST), 제1 내지 제n 메모리 셀들(M1~Mn) 및 드레인 선택 트랜지스터(DST)의 개수는 메모리 장치에 따라 변경될 수 있다. 또한, 도면에는 도시되지 아니하였으나, 스트링들(ST)에는 메모리 셀들의 전기적인 특성을 개선하기 위한 더미 셀들(dummy cells)이 더 포함될 수 있다. 더미 셀들은 노말 데이터 대신 더미 데이터(dummy data)를 저장할 수 있다.
서로 다른 스트링들(ST)에 포함된 소스 선택 트랜지스터들(SST)의 게이트들은 소스 선택 라인(SSL)에 연결될 수 있고, 제1 내지 제n 메모리 셀들(M1~Mn)의 게이트들은 제1 내지 제n 워드 라인들(WL1~WLn)에 연결될 수 있으며, 드레인 선택 트랜지스터들(DST)의 게이트들은 드레인 선택 라인(DSL)에 연결될 수 있다.
제1 내지 제n 메모리 셀들(M1~Mn) 중에서 서로 동일한 층에 형성된 메모리 셀들은 동일한 워드 라인에 연결될 수 있다. 예를 들면, 서로 다른 스트링들(ST)에 포함된 제1 메모리 셀들(M1)은 제1 워드 라인(WL1)에 공통으로 연결될 수 있고, 서로 다른 스트링들(ST)에 포함된 제n 메모리 셀들(Mn)은 제n 워드 라인(WLn)에 공통으로 연결될 수 있다. 서로 다른 스트링들(ST)에 포함되고 서로 동일한 워드 라인에 연결된 메모리 셀들의 그룹은 페이지(page; PG)가 된다. 프로그램 또는 리드 동작은 페이지(PG) 단위로 수행될 수 있다.
프로그램 동작을 예를 들어 설명하면, 선택된 워드 라인에는 프로그램 전압이 인가되고, 비선택된 워드 라인들에는 패스 전압이 인가될 수 있다. 드레인 선택 라인(Sel_DSL) 및 선택된 소스 선택 라인(Sel_SSL)에는 턴온 전압이 인가될 수 있다. 선택된 페이지의 프로그램 동작에서는 프로그램 루프들(program loops)이 수행될 수 있다. 프로그램 루프들 각각은 프로그램 전압 인가 단계 및 검증 단계를 포함할 수 있다. 선택된 페이지에 포함된 선택된 메모리 셀들의 문턱전압들이 목표레벨에 도달할 때까지 프로그램 루프들이 수행될 수 있으며, 프로그램 루프가 수행될 때마다 프로그램 전압은 스텝 전압만큼 높아질 수 있다.
도 3은 서브 블록들을 포함하는 메모리 블록을 설명하기 위한 도면이고, 도 4a 내지 도 4c는 서로 다른 방식으로 프로그램된 메모리 셀들의 문턱전압 분포를 설명하기 위한 도면들이다.
도 3을 참조하면, 제1 메모리 블록(BLK1)은 제1 내지 제k 서브 블록들(SB1~SBk)을 포함할 수 있다. 제1 내지 제k 서브 블록들(SB1~SBk)은 워드 라인에 따라 구분될 수 있다. 예를 들면, 제1 내지 제3 워드 라인들(WL1~WL3)에 연결된 메모리 셀들은 제1 서브 블록(SB1)에 포함될 수 있고, 제4 내지 제6 워드 라인들(WL4~WL6)에 연결된 메모리 셀들은 제2 서브 블록(SB2)에 포함될 수 있다. 프로그램 동작은 제1 내지 제k 서브 블록들(SB1~SBk) 각각에서 서로 다른 방식으로 수행될 수 있다. 다양한 방식의 프로그램 동작을 설명하면 다음과 같다.
도 3 및 도 4a를 참조하면, 하나의 메모리 셀에 1 비트의 데이터가 저장되는 싱글 레벨 셀 방식(single level cell; SLC) 방식에서는, 메모리 셀들은 소거 상태(ER) 또는 프로그램 상태(PV)로 구분될 수 있다. 예를 들면, 선택된 페이지에 포함된 메모리 셀들 중 선택된 메모리 셀들은 프로그램 상태(PV)로 프로그램될 수 있고, 비선택된 메모리 셀들은 소거 상태(ER)로 유지될 수 있다.
도 3 및 도 4b를 참조하면, 하나의 메모리 셀에 3 비트의 데이터가 저장되는 트리플 레벨 셀(triple level cell; TLC) 방식에서는, 메모리 셀들은 소거 상태(ER) 또는 제1 내지 제7 프로그램 상태들(PV1~PV7) 중 어느 하나의 상태로 구분될 수 있다. 예를 들면, 선택된 페이지에 포함된 메모리 셀들 중 선택된 메모리 셀들은 제1 내지 제7 프로그램 상태들(PV1~PV7) 중 어느 하나로 프로그램될 수 있고, 비선택된 메모리 셀들은 소거 상태(ER)로 유지될 수 있다.
도 3 및 도 4c를 참조하면, 하나의 메모리 셀에 4 비트의 데이터가 저장되는 쿼드 레벨 셀(quad level cell; QLC) 방식에서는, 메모리 셀들은 소거 상태(ER) 또는 제1 내지 제15 프로그램 상태들(PV1~PV15) 중 어느 하나의 상태로 구분될 수 있다. 예를 들면, 선택된 페이지에 포함된 메모리 셀들 중 선택된 메모리 셀들은 제1 내지 제15 프로그램 상태들(PV1~PV15) 중 어느 하나로 프로그램될 수 있고, 비선택된 메모리 셀들은 소거 상태(ER)로 유지될 수 있다.
하나의 메모리 셀에 저장되는 데이터의 비트의 개수가 증가할수록 프로그램 동작에서 수행되는 프로그램 루프의 횟수가 증가하므로, 프로그램 동작에 걸리는 시간은 증가할 수 있고, 신뢰도는 낮아질 수 있다. 하지만, 하나의 메모리 셀에 저장되는 데이터의 비트의 개수가 증가할수록 서브 블록에 저장되는 데이터의 용량은 증가할 수 있다. 따라서, 프로그램 방식들의 특징들을 고려하여, 제1 내지 제k 서브 블록들(SB1~SBk)에서 서로 다른 방식의 프로그램 동작들이 수행될 수 있다. 서로 다른 방식의 프로그램 동작들에서 프로그램된 메모리 셀들의 상태들도 서로 다르므로, 프로그램 동작에서 사용되는 전압들 또한 서로 다를 수 있다.
도 5는 본 발명의 제1 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 5를 참조하면, 제1 내지 제3 서브 블록들의 프로그램 및 소거 동작들은 주변 회로(도 1의 170)에 의해 수행될 수 있으며, 주변 회로(170)는 제어 회로(도 1의 180)에 의해 제어될 수 있다.
선택된 메모리 블록에 포함된 제1 내지 제3 서브 블록들 중, 제1 서브 블록은 제1 방식으로 프로그램 및 소거될 수 있다(S51). 제1 방식은 SLC, MLC, TLC 또는 QLC 방식 중 어느 하나일 수 있으나, 이 외에도 다양한 프로그램 방식들 중 어느 하나일 수도 있다. 제1 서브 블록이 제1 방식으로 프로그램된 후 소거되기 이전까지, 다른 메모리 블록의 서브 블록에서도 제1 방식의 프로그램 동작 또는 소거 동작이 수행될 수 있다. 제1 서브 블록에 수행되는 프로그램 동작은 제1 내지 제3 서브 블록들 중에서 제1 서브 블록에 수행되고, 제1 서브 블록에 수행되는 소거 동작도 제1 내지 제3 서브 블록들 중에서 제1 서브 블록에 수행된다.
S51 단계에서 제1 서브 블록이 소거된 후, 제2 서브 블록이 제2 방식으로 프로그램 및 소거될 수 있다(S52). 제2 방식은 제1 방식과 다른 방식이다. 제2 방식은 SLC, MLC, TLC 또는 QLC 방식 중 어느 하나일 수 있으며, 이 외에도 다양한 프로그램 방식들 중 어느 하나일 수도 있다. 제2 서브 블록이 제2 방식으로 프로그램된 후 소거되기 이전까지, 다른 메모리 블록의 서브 블록에서도 제2 방식의 프로그램 동작 또는 소거 동작이 수행될 수 있다. 제2 서브 블록에 수행되는 프로그램 동작은 제1 내지 제3 서브 블록들 중에서 제2 서브 블록에 수행되고, 제2 서브 블록에 수행되는 소거 동작도 제1 내지 제3 서브 블록들 중에서 제2 서브 블록에 수행된다. 제2 서브 블록에서 프로그램 동작 및 소거 동작이 수행되면, 제2 서브 블록의 싸이클링 횟수(cycling number; Ncyc)가 1회 증가한다.
제2 서브 블록의 싸이클링 횟수(Ncyc)가 증가하면, 제어 회로(180)는 싸이클링 횟수(Ncyc)와 기준 횟수(Nref)를 서로 비교할 수 있다(S53). 기준 횟수(Nref)는 제어 회로(180)에 미리 저장된 값으로, 메모리 장치에 따라 다른 값으로 설정될 수 있다. 제어 회로(180)는 제2 서브 블록의 싸이클링 횟수(Ncyc)가 기준 횟수(Nref) 이상인지 판단하여, 싸이클링 횟수(Ncyc)가 기준 횟수(Nref)보다 작으면(아니오) S52 단계를 재 수행할 수 있다. S53 단계에서, 제2 서브 블록의 싸이클링 횟수(Ncyc)가 기준 횟수(Nref) 이상이면(예), 제어 회로(180)는 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하기 위한 보상 동작(COP)을 제1 서브 블록에 수행할 수 있다.
보상 동작(COP)을 구체적으로 설명하면 다음과 같다.
제어 회로(180)는 제1 서브 블록의 프로그램 및 소거 동작에 오프셋을 설정할 수 있다(S54). 예를 들면, 제어 회로(180)는 제1 서브 블록에서 수행된 프로그램 동작의 스텝 전압에 오프셋을 설정할 수 있다. 스텝 전압은 프로그램 루프에 따라 증가하는 프로그램 전압들의 전압차를 의미한다. 보상 동작(COP)에서 오프셋은 스텝 전압이 증가하는 전압으로 설정될 수 있다. 또한, 제어 회로(180)는 제1 서브 블록에서 수행된 소거 동작의 소거 전압에 오프셋을 설정할 수 있다. 제어 회로(180)는 제1 서브 블록에서 수행된 프로그램 동작의 시작 프로그램 전압에도 오프셋을 설정할 수 있다. 즉, 시작 프로그램 전압 및 스텝 전압 각각에 오프셋이 설정될 수도 있다. 소거 동작에 설정되는 오프셋도 소거 전압이 증가하는 전압으로 설정될 수 있다.
프로그램 동작 및 소거 동작의 오프셋들이 설정되면, 제어 회로(180)는 오프셋이 설정된 전압들을 사용하여 제1 서브 블록을 제1 방식으로 재프로그램(re-program)하고 재소거(re-erase)할 수 있다(S55). 제1 방식의 재프로그램 동작을 위하여, 제어 회로(180)는 외부의 컨트롤러에게 제1 서브 블록에 수행된 데이터를 다시 요청하거나, 더미 데이터를 요청할 수 있다. 제1 서브 블록이 제1 방식으로 재프로그램되면, 제어 회로(180)는 제1 서브 블록의 재소거 동작을 수행할 수 있다. 재소거 동작은 프로그램 방식에 관계 없이 동일한 방식으로 수행될 수 있다.
재소거 동작이 수행되면, 재소거 검증 동작이 수행될 수 있다(S56). 즉, S52 단계에서 제2 서브 블록에 수행된 프로그램 및 소거 동작에 의해 제1 서브 블록에 포함된 메모리 셀들의 소거 상태의 문턱전압이 높아질 수 있으므로, S55 단계에서 수행된 재소거 동작에 대한 검증 동작이 S56 단계에서 수행될 수 있다.
재소거 검증 동작이 페일되면(페일), 제어 회로(180)는 제1 서브 블록의 재소거 검증 동작이 패스될 때까지 S54 내지 S56 단계들을 반복할 수 있다.
재소거 검증 동작이 패스되면(패스), 제어 회로(180)는 제3 서브 블록의 프로그램 및 소거 동작을 수행할 수 있다(S57). 제3 서브 블록에서는 제3 방식으로 프로그램 및 소거 동작이 수행될 수 있다. 제3 방식은 제1 및 제2 방식들과 다른 방식이다. 예를 들면, 제3 방식은 SLC, MLC, TLC 또는 QLC 방식 중 어느 하나일 수 있으며, 이 외에도 다양한 프로그램 방식들 중 어느 하나일 수도 있다. 제3 서브 블록이 제3 방식으로 프로그램된 후 소거되기 이전까지, 다른 메모리 블록의 서브 블록에서도 제3 방식의 프로그램 동작 또는 소거 동작이 수행될 수 있다. 제3 서브 블록에 수행되는 프로그램 동작은 제1 내지 제3 서브 블록들 중에서 제3 서브 블록에 수행되고, 제3 서브 블록에 수행되는 소거 동작도 제1 내지 제3 서브 블록들 중에서 제3 서브 블록에 수행된다.
제1 실시 예에 따라 프로그램 및 소거 동작들이 수행되는 제1 내지 제3 서브 블록들의 상태를 설명하면 다음과 같다.
도 6a 내지 도 6d는 제1 실시 예에 따라 프로그램 또는 소거되는 서브 블록들을 설명하기 위한 도면들이다.
도 5 및 도 6a를 참조하면, S51 단계가 수행되기 이전에, 제1 메모리 블록(BLK1)에 포함된 제1 내지 제3 서브 블록들(SB1~SB3)은 소거 상태(ER)일 수 있다. S51 단계에서, 제1 메모리 블록(BLK1)에 포함된 제1 서브 블록(SB1)은 제1 방식에 따라 프로그램될 수 있다. 예를 들면, 제1 서브 블록(SB1)은 TLC 방식으로 프로그램될 수 있다. 제1 서브 블록(SB1)이 프로그램된 후, 제1 서브 블록(SB1)의 리드 동작이 수행되거나, 제1 메모리 블록(BLK1) 이외의 다른 메모리 블록에서 프로그램, 리드 또는 소거 동작이 수행될 수도 있다. 제1 서브 블록(SB1)에 소거 동작이 수행되면, 제1 서브 블록(SB1)의 1 싸이클(cycle)이 종료된다.
도 5 및 도 6b를 참조하면, 제1 서브 블록(SB1)의 싸이클이 종료된 후, S52 단계에서는 제2 서브 블록(SB2)의 싸이클이 수행될 수 있다. 제2 서브 블록(SB2)은 제1 서브 블록(SB1)에 수행된 프로그램 동작과 다른 제2 방식에 따라 프로그램될 수 있다. 예를 들면, 제2 방식은 SLC 방식일 수 있다. 제2 서브 블록(SB2)이 프로그램된 후, 제2 서브 블록(SB2)의 리드 동작이 수행되거나, 제1 메모리 블록(BLK1) 이외의 다른 메모리 블록에서 프로그램, 리드 또는 소거 동작이 수행될 수도 있다. 제2 서브 블록(SB2)에 소거 동작이 수행되면, 제2 서브 블록(SB2)의 1 싸이클(cycle)이 종료된다. 따라서, 제2 서브 블록(SB2)의 싸이클링 횟수(Ncyc)는 이전 싸이클링 횟수(Ncyc)보다 1이 증가된 값을 가질 수 있다.
도 5 및 도 6c를 참조하면, 제2 서브 블록(SB2)의 싸이클링 횟수가 증가할수록, 제2 서브 블록(SB2)에 인접한 제1 서브 블록(SB1)에 포함된 메모리 셀들의 문턱전압이 변경될 수 있다. 예를 들면, 제2 서브 블록(SB2)의 싸이클링 횟수가 증가한다는 것은 제2 서브 블록(SB2)에서 수행되는 프로그램 및 소거 동작들의 횟수가 증가한다는 것을 의미하며, 이로 인해 제2 서브 블록(SB2)에 인접한 제1 서브 블록(SB1)이 영향을 받을 수 있다. 제1 서브 블록(SB1)에 포함된 메모리 셀들은 소거 상태(ER)이므로, 제2 서브 블록(SB2)의 싸이클링 횟수(Ncyc)가 증가할수록 제1 서브 블록(SB1)에 포함된 메모리 셀들의 문턱전압은 높아질 수 있다. 따라서, S53 단계에서는, 제1 서브 블록(SB1)에 포함된 메모리 셀들의 문턱전압이 보상되어야 하는 상태인지를 판단하는 동작이 수행될 수 있다. 예를 들면 제2 서브 블록(SB2)의 싸이클링 횟수(Ncyc)가 기준 횟수(Nref) 이상인지가 판단될 수 있다.
제2 서브 블록(SB2)의 싸이클링 횟수(Ncyc)가 기준 횟수(Nref) 이상이면, 제1 서브 블록(SB1)에 포함된 메모리 셀들의 문턱전압을 보상하기 위한 보상 동작이 수행될 수 있다.
보상 동작이 시작되면, 제1 서브 블록(SB1)에 수행될 프로그램 및 소거 동작의 일부 조건들이 변경될 수 있다. 예를 들면, 프로그램 루프에 따라 높아지는 프로그램 전압의 전압차에 해당하는 스텝 전압에 오프셋(offset)이 설정될 수 있고, 시작 프로그램 전압에 오프셋이 설정될 수도 있으며, 소거 전압에도 오프셋이 설정될 수 있다(S54). 오프셋은 양전압으로 설정된다. 따라서, 디폴트 레벨을 가지는 스텝 전압에 오프셋이 설정되면, 스텝 전압이 높아질 수 있다. S55 단계에서 수행되는 프로그램 동작의 스텝 전압이 높아지면, S51 단계의 프로그램 전압보다 프로그램 전압이 빠르게 높아질 수 있다. 따라서, S55 단계에서 수행되는 프로그램 동작에 걸리는 시간은 S51 단계에서 수행되는 프로그램 동작에 걸리는 시간보다 단축될 수 있다. 시작 프로그램 전압과 스텝 전압 각각에 오프셋이 설정된 경우, 프로그램 동작에 걸리는 시간은 더욱 단축될 수 있다. S55 단계에서 제1 서브 블록(SB1)에 수행되는 프로그램 동작은 제1 방식에 따라 수행될 수 있다. S55 단계에서 수행되는 프로그램 동작의 목적은 제1 서브 블록(SB1)에 특정 데이터를 저장하는 것이 아니라 메모리 셀들의 문턱전압을 정상 문턱전압으로 되돌리기 위한 것이므로, 프로그램 동작 시 제1 서브 블록(SB1)에 더미 데이터가 저장될 수 있다. 메모리 장치의 외부에 연결된 컨트롤러에 제1 서브 블록(SB1)에 저장된 기존 데이터가 저장되어 있으면, 제1 서브 블록(SB1)에 더미 데이터 대신 기존 데이터라 저장될 수도 있다. 오프셋이 설정된 프로그램 동작이 제1 방식에 따라 제1 서브 블록(SB1)에 수행되면, 이어서 오프셋이 설정된 소거 전압을 사용하는 소거 동작이 제1 서브 블록(SB1)에 수행될 수 있다. 제1 서브 블록(SB1)에 프로그램 및 소거 동작을 포함한 보상 동작(COP)이 수행되면, 제1 서브 블록(SB1)에 포함된 소거 상태(ER)의 메모리 셀들의 문턱전압은 다시 낮아질 수 있다.
도 5 및 도 6d를 참조하면, 제1 서브 블록(SB1)의 보상 동작(COP)이 종료되면, 제3 서브 블록(SB3)의 싸이클이 수행될 수 있다(S57). 제3 서브 블록(SB3)은 제3 방식에 따라 프로그램될 수 있다. 예를 들면, 제3 방식은 SLC 방식일 수 있다. 제3 서브 블록(SB3)이 프로그램된 후, 제3 서브 블록(SB3)의 리드 동작이 수행되거나, 제1 메모리 블록(BLK1) 이외의 다른 메모리 블록에서 프로그램, 리드 또는 소거 동작이 수행될 수도 있다. 제3 서브 블록(SB3)에 소거 동작이 수행되면, 제3 서브 블록(SB3)의 1 싸이클(cycle)이 종료된다.
도 7a 내지 도 7c는 오프셋 설정 전과 후의 프로그램 전압들을 설명하기 위한 도면들이다.
도 5 및 도 7a를 참조하면, S51 단계에서 수행되는 프로그램 동작에서는 디폴트로 설정된 프로그램 전압 및 스텝 전압이 사용될 수 있다. 예를 들면, 시작 프로그램 전압(ST_Vpgm) 및 제1 스텝 전압(1Vst)은 메모리 장치 제조 시 설정된 디폴트 레벨로 설정될 수 있다. 따라서, 제1 프로그램 루프(1LP)에서 사용되는 제1 프로그램 전압(1Vpgm)은 시작 프로그램 전압(ST_Vpgm)일 수 있다. 제2 프로그램 루프(2LP)에서는 제1 프로그램 전압(1Vpgm)보다 제1 스텝 전압(1Vst)만큼 높은 제2 프로그램 전압(2Vpgm)이 사용될 수 있다. 이러한 방식으로 나머지 프로그램 루프들이 수행될 수 있다.
도 5 및 도 7b를 참조하면, 보상 동작에서 수행되는 S55 단계의 프로그램 동작에서는 디폴트로 설정된 시작 프로그램 전압(ST_Vpgm)과 오프셋(OFS)이 설정된 제2 스텝 전압(2Vst)이 사용될 수 있다. 즉, 제2 스텝 전압(2Vst)은 제1 스텝 전압(1Vst)보다 오프셋(OFS)만큼 높은 전압으로 설정될 수 있다. 따라서, 제1 프로그램 루프(1LP)에서 사용되는 제1 프로그램 전압(1Vpgm)은 시작 프로그램 전압(ST_Vpgm)일 수 있다. 제2 프로그램 루프(2LP)에서는 제1 프로그램 전압(1Vpgm)보다 제2 스텝 전압(2Vst)만큼 높은 제2 프로그램 전압(2Vpgm)이 사용될 수 있다. 이러한 방식으로 나머지 프로그램 루프들이 수행될 수 있다.
도 5 및 도 7c를 참조하면, 보상 동작에서 수행되는 S55 단계의 프로그램 동작에서는 오프셋이 설정된 시작 프로그램 전압(ST_Vpgm’)과 오프셋이 설정된 제2 스텝 전압(2Vst)이 사용될 수도 있다. 따라서, 제1 프로그램 루프(1LP)에서 사용되는 제1 프로그램 전압(1Vpgm)은 오프셋이 설정된 시작 프로그램 전압(ST_Vpgm’)일 수 있다. 제2 프로그램 루프(2LP)에서는 제1 프로그램 전압(1Vpgm)보다 제2 스텝 전압(2Vst)만큼 높은 제2 프로그램 전압(2Vpgm)이 사용될 수 있다. 이러한 방식으로 나머지 프로그램 루프들이 수행될 수 있다.
도 8a 및 도 8b는 오프셋 설정 전과 후의 소거 전압들을 설명하기 위한 도면들이다.
도 5 및 도 8a를 참조하면, S51 단계에서 수행되는 소거 동작에서는 디폴트로 설정된 소거 전압이 사용될 수 있다. 예를 들면, 메모리 장치 제조 시 설정된 디폴트 레벨을 가지는 제1 소거 전압이 사용될 수 있다.
도 5 및 도 8b를 참조하면, 보상 동작에서 수행되는 S55 단계의 소거 동작에서는 오프셋(OFS)이 설정된 제2 소거 전압(2Vers)이 사용될 수 있다. 즉, 제2 소거 전압(2Vers)은 제1 소거 전압(1Vers)보다 오프셋(OFS)만큼 높은 전압으로 설정될 수 있다.
도 9는 본 발명의 제1 실시 예에 따른 효과를 설명하기 위한 도면이다.
도 9를 참조하면, 제1 서브 블록이 제1 방식으로 프로그램 및 소거된 이후에 제2 서브 블록의 싸이클링 횟수가 증가하면, 제1 서브 블록에 포함된 소거 상태(ER)인 메모리 셀들의 문턱전압이 높아질 수 있다(91). 소거 상태(ER)인 메모리 셀들의 문턱전압이 높아지면(91), 프로그램 동작 시 과프로그램되는 메모리 셀들의 개수가 증가할 수 있고, 이로 인해 서로 다른 프로그램 상태로 유지되어야 하는 메모리 셀들의 문턱전압 분포들이 서로 중첩할 수 있다. 이 경우, 리드 동작 시 에러가 발생할 수 있다. 이러한 에러 발생을 방지하기 위하여, 상술한 제1 실시 예에서는 제2 서브 블록의 싸이클링 횟수에 따라 제1 서브 블록에 보상 동작이 수행될 수 있다. 보상 동작 시, 제1 서브 블록은 재프로그램 및 재소거 되므로, 제1 서브 블록에 포함된 메모리 셀들의 문턱전압은 정상 소거 상태(92)로 복구될 수 있다.
도 10은 본 발명의 제2 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 10을 참조하면, 제2 실시예에서는 서브 블록들에 소거 동작이 수행되지 않더라도 보상 동작(COP)이 수행될 수 있다.
제1 내지 제3 서브 블록들의 프로그램 동작은 주변 회로(도 1의 170)에 의해 수행될 수 있으며, 주변 회로(170)는 제어 회로(도 1의 180)에 의해 제어될 수 있다.
선택된 메모리 블록에 포함된 제1 내지 제3 서브 블록들 중, 제1 서브 블록은 제1 방식으로 프로그램될 수 있다(S101). 제1 방식은 SLC, MLC, TLC 또는 QLC 방식 중 어느 하나일 수 있으나, 이 외에도 다양한 프로그램 방식들 중 어느 하나일 수도 있다.
S101 단계에서 제1 서브 블록이 프로그램된 후, 제2 서브 블록이 제2 방식으로 프로그램될 수 있다(S102). 제2 방식은 제1 방식과 다른 방식이다. 제2 방식은 SLC, MLC, TLC 또는 QLC 방식 중 어느 하나일 수 있으며, 이 외에도 다양한 프로그램 방식들 중 어느 하나일 수도 있다. 제2 서브 블록에서 프로그램 동작이 수행되면, 제2 서브 블록의 프로그램 횟수(program number; Npgm)가 1회 증가한다.
제2 서브 블록의 프로그램 횟수(Npgm)가 증가하면, 제어 회로(180)는 프로그램 횟수(Npgm)와 기준 횟수(Nref)를 서로 비교할 수 있다(S103). 기준 횟수(Nref)는 도 5를 참조하여 설명된 기준 횟수(Nref)와 다를 수 있다. 기준 횟수(Nref)는 제어 회로(180)에 미리 저장된 값으로, 메모리 장치에 따라 다른 값으로 설정될 수 있다. 제어 회로(180)는 제2 서브 블록의 프로그램 횟수(Npgm)가 기준 횟수(Nref) 이상인지 판단하여, 프로그램 횟수(Npgm)가 기준 횟수(Nref)보다 작으면(아니오) S102 단계를 재 수행할 수 있다. S103 단계에서, 제2 서브 블록의 프로그램 횟수(Npgm)가 기준 횟수(Nref) 이상이면(예), 제어 회로(180)는 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하기 위한 보상 동작(COP)을 제1 서브 블록에 수행할 수 있다.
보상 동작(COP)을 구체적으로 설명하면 다음과 같다.
제어 회로(180)는 제1 서브 블록의 소거 및 프로그램 동작에 오프셋을 설정할 수 있다(S104). 예를 들면, 제어 회로(180)는 제1 서브 블록에서 수행될 소거 동작의 소거 동작에 오프셋을 설정할 수 있다. 소거 동작에 설정되는 오프셋은 소거 전압이 증가하는 전압으로 설정될 수 있다. 제어 회로(180)는 제1 서브 블록에서 수행될 프로그램 동작의 스텝 전압에 오프셋을 설정할 수 있다. 스텝 전압은 프로그램 루프에 따라 증가하는 프로그램 전압들의 전압차를 의미한다. 보상 동작(COP)에서 오프셋은 스텝 전압이 증가하는 전압으로 설정될 수 있다. 제어 회로(180)는 제1 서브 블록에서 수행될 프로그램 동작의 시작 프로그램 전압에도 오프셋을 설정할 수 있다. 즉, 시작 프로그램 전압 및 스텝 전압 각각에 오프셋이 설정될 수도 있다.
소거 및 프로그램 동작의 오프셋들이 설정되면, 제어 회로(180)는 오프셋이 설정된 전압들을 사용하여 제1 서브 블록을 재소거(re-erase)한 후 제1 서브 블록을 재프로그램(re-program)할 수 있다(S105). 재소거 및 재프로그램 동작은 제1 방식으로 수행될 수 있다. 재프로그램 동작을 위하여, 제어 회로(180)는 외부의 컨트롤러에게 제1 서브 블록에 수행된 데이터를 다시 요청할 수 있다.
재프로그램 동작이 수행되면, 재프로그램 검증 동작이 수행될 수 있다(S106). 즉, S102 단계에서 제2 서브 블록에 수행된 프로그램 동작에 의해 제1 서브 블록에 포함된 메모리 셀들의 문턱전압이 높아질 수 있으므로, S105 단계에서 수행된 재프로그램 동작에 대한 검증 동작이 S106 단계에서 수행될 수 있다.
재프로그램 검증 동작이 페일되면(페일), 제어 회로(180)는 제1 서브 블록의 재프로그램 검증 동작이 패스될 때까지 S104 내지 S106 단계들을 반복할 수 있다.
재프로그램 검증 동작이 패스되면(패스), 제어 회로(180)는 제3 서브 블록의 프로그램 동작을 수행할 수 있다(S107). 제3 서브 블록에서는 제3 방식으로 프로그램 동작이 수행될 수 있다. 제3 방식은 제1 및 제2 방식들과 다른 방식이다. 예를 들면, 제3 방식은 SLC, MLC, TLC 또는 QLC 방식 중 어느 하나일 수 있으며, 이 외에도 다양한 프로그램 방식들 중 어느 하나일 수도 있다.
도 11은 본 발명의 제2 실시 예에 따른 효과를 설명하기 위한 도면이다.
도 11을 참조하면, 제1 서브 블록이 제1 방식으로 프로그램된 이후에 제2 서브 블록의 프로그램 횟수가 증가하면, 제1 서브 블록에서 프로그램 상태(PV1~PV7)인 메모리 셀들의 문턱전압이 높아질 수 있다(111). 프로그램 상태(PV1~PV7)인 메모리 셀들의 문턱전압이 높아지면(111), 이후에 수행되는 소거 동작에서 문턱전압이 충분히 낮아지지 않는 메모리 셀들의 개수가 증가할 수 있고, 후속 수행될 프로그램 동작 시 메모리 셀들의 문턱전압이 높아질 수 있다. 이로 인해, 리드 동작 시 에러가 발생할 수 있다. 이러한 에러 발생을 방지하기 위하여, 제2 실시 예에서는 제2 서브 블록의 프로그램 횟수에 따라 제1 서브 블록에 보상 동작이 수행될 수 있다. 보상 동작 시, 제1 서브 블록은 재소거 및 재프로그램 되므로, 제1 서브 블록에 포함된 메모리 셀들의 문턱전압은 정상 프로그램 상태(112)로 복구될 수 있다.
도 12는 본 발명의 제3 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 12를 참조하면, 보상 동작(COP)은 제1 내지 제3 서브 블록들에 수행되는 프로그램 방식에 제한을 받지 않는다. 따라서, 제3 실시 예에서, 제1 서브 블록(SB1)은 SLC 방식으로 프로그램될 수 있고, 제2 서브 블록(SB2)은 TLC 방식으로 프로그램될 수 있다(S121). 제2 서브 블록(SB2)의 싸이클링 횟수 또는 프로그램 횟수가 기준 횟수 이상이 되면, 제1 서브 블록(SB1)에 보상 동작(COP)이 수행될 수 있다(S122). 보상 동작(COP)에서는 오프셋이 설정된 전압들을 사용한 프로그램 및 소거 동작이 수행될 수 있다. 보상 동작(COP)에서 제1 서브 블록(SB1)에 수행되는 프로그램 동작도 SLC 방식으로 수행될 수 있다.
제1 서브 블록(SB1)의 보상 동작(COP)이 종료되면, 제3 서브 블록(SB3)의 프로그램 동작이 수행될 수 있다(S123). 제3 서브 블록(SB3)에 수행되는 프로그램 동작은 QLC 방식으로 수행될 수 있다.
도 13은 본 발명의 제4 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 13을 참조하면, 제4 실시 예에서 제1 서브 블록(SB1)은 TLC 방식으로 프로그램될 수 있고, 제2 서브 블록(SB2)은 SLC 방식으로 프로그램될 수 있다(S131). 제2 서브 블록(SB2)의 싸이클링 횟수 또는 프로그램 횟수가 기준 횟수 이상이 되면, 제1 서브 블록(SB1)에 보상 동작(COP)이 수행될 수 있다(S132). 보상 동작(COP)에서는 오프셋이 설정된 전압들을 사용한 프로그램 및 소거 동작이 수행될 수 있다. 보상 동작(COP)에서 제1 서브 블록(SB1)에 수행되는 프로그램 동작도 TLC 방식으로 수행될 수 있다.
제1 서브 블록(SB1)의 보상 동작(COP)이 종료되면, 제3 서브 블록(SB3)의 프로그램 동작이 수행될 수 있다(S133). 제3 서브 블록(SB3)에 수행되는 프로그램 동작은 QLC 방식으로 수행될 수 있다.
도 14는 본 발명의 제5 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 14를 참조하면, 제5 실시 예에서 제1 서브 블록(SB1)은 QLC 방식으로 프로그램될 수 있고, 제2 서브 블록(SB2)은 SLC 방식으로 프로그램될 수 있다(S141). 제2 서브 블록(SB2)의 싸이클링 횟수 또는 프로그램 횟수가 기준 횟수 이상이 되면, 제1 서브 블록(SB1)에 보상 동작(COP)이 수행될 수 있다(S142). 보상 동작(COP)에서는 오프셋이 설정된 전압들을 사용한 프로그램 및 소거 동작이 수행될 수 있다. 보상 동작(COP)에서 제1 서브 블록(SB1)에 수행되는 프로그램 동작도 QLC 방식으로 수행될 수 있다.
제1 서브 블록(SB1)의 보상 동작(COP)이 종료되면, 제3 서브 블록(SB3)의 프로그램 동작이 수행될 수 있다(S143). 제3 서브 블록(SB3)에 수행되는 프로그램 동작은 TLC 방식으로 수행될 수 있다.
도 15는 본 발명의 제6 실시 예에 따른 메모리 장치의 동작 방법을 설명하기 위한 순서도이다.
도 15를 참조하면, 제6 실시 예에서 제1 서브 블록(SB1)은 QLC 방식으로 프로그램될 수 있고, 제2 서브 블록(SB2)은 TLC 방식으로 프로그램될 수 있다(S151). 제2 서브 블록(SB2)의 싸이클링 횟수 또는 프로그램 횟수가 기준 횟수 이상이 되면, 제1 서브 블록(SB1)에 보상 동작(COP)이 수행될 수 있다(S152). 보상 동작(COP)에서는 오프셋이 설정된 전압들을 사용한 프로그램 및 소거 동작이 수행될 수 있다. 보상 동작(COP)에서 제1 서브 블록(SB1)에 수행되는 프로그램 동작도 QLC 방식으로 수행될 수 있다.
제1 서브 블록(SB1)의 보상 동작(COP)이 종료되면, 제3 서브 블록(SB3)의 프로그램 동작이 수행될 수 있다(S153). 제3 서브 블록(SB3)에 수행되는 프로그램 동작은 SLC 방식으로 수행될 수 있다.
도 16은 본 발명의 메모리 장치가 적용된 메모리 카드 시스템을 설명하기 위한 도면이다.
도 16을 참조하면, 메모리 카드 시스템(3000)은 컨트롤러(3100), 메모리 장치(3200), 및 커넥터(3300)를 포함한다.
컨트롤러(3100)는 메모리 장치(3200)와 연결된다. 컨트롤러(3100)는 메모리 장치(3200)를 접속(access)하도록 구성된다. 예를 들어, 컨트롤러(3100)는 메모리 장치(3200)의 프로그램, 리드 또는 소거 동작을 제어하거나, 배경(background) 동작을 제어하도록 구성될 수 있다. 컨트롤러(3100)는 메모리 장치(3200) 및 호스트(Host) 사이에 인터페이스를 제공하도록 구성된다. 컨트롤러(3100)는 메모리 장치(3200)를 제어하기 위한 펌웨어(firmware)를 구동하도록 구성된다. 예를 들면, 컨트롤러(3100)는 램(RAM, Random Access Memory), 프로세싱 유닛(processing unit), 호스트 인터페이스(host interface), 메모리 인터페이스(memory interface), 에러 정정부와 같은 구성 요소들을 포함할 수 있다.
컨트롤러(3100)는 커넥터(3300)를 통해 외부 장치와 통신할 수 있다. 컨트롤러(3100)는 특정한 통신 규격에 따라 외부 장치(예를 들어, 호스트)와 통신할 수 있다. 예시적으로, 컨트롤러(3100)는 USB (Universal Serial Bus), MMC (multimedia card), eMMC(embedded MMC), PCI (peripheral component interconnection), PCI-E (PCI-express), ATA (Advanced Technology Attachment), Serial-ATA, Parallel-ATA, SCSI (small computer system interface), ESDI (enhanced small disk interface), IDE (Integrated Drive Electronics), 파이어와이어(Firewire), UFS(Universal Flash Storage), WIFI, Bluetooth, NVMe 등과 같은 다양한 통신 규격들 중 적어도 하나를 통해 외부 장치와 통신하도록 구성된다. 예시적으로, 커넥터(3300)는 상술한 다양한 통신 규격들 중 적어도 하나에 의해 정의될 수 있다.
메모리 장치(3200)는 복수의 메모리 셀들을 포함할 수 있으며, 도 1에 도시된 메모리 장치(100)와 동일하게 구성될 수 있다. 따라서, 메모리 장치(3200)는 리드 동작 시 비선택된 워드 라인들에 인가되는 패스 전압들을 상술한 실시 예들과 같이 조절할 수 있다.
컨트롤러(3100) 및 메모리 장치(3200)는 하나의 반도체 장치로 집적되어, 메모리 카드를 구성할 수 있다. 예를 들면, 컨트롤러(3100) 및 메모리 장치(3200)는 하나의 반도체 장치로 집적되어 PC 카드(PCMCIA, personal computer memory card international association), 컴팩트 플래시 카드(CF), 스마트 미디어 카드(SM, SMC), 메모리 스틱, 멀티미디어 카드(MMC, RS-MMC, MMCmicro, eMMC), SD 카드(SD, miniSD, microSD, SDHC), 범용 플래시 기억장치(UFS) 등과 같은 메모리 카드를 구성할 수 있다.
도 17은 본 발명의 메모리 장치가 적용된 SSD(Solid State Drive) 시스템을 설명하기 위한 도면이다.
도 17을 참조하면, SSD 시스템(4000)은 호스트(4100) 및 SSD(4200)를 포함한다. SSD(4200)는 신호 커넥터(4001)를 통해 호스트(4100)와 신호를 주고 받고, 전원 커넥터(4002)를 통해 전원을 입력 받는다. SSD(4200)는 컨트롤러(4210), 복수의 메모리 장치들(4221~422n), 보조 전원 장치(4230), 및 버퍼 메모리(4240)를 포함한다.
컨트롤러(4210)는 호스트(4100)로부터 수신된 신호에 응답하여 복수의 메모리 장치들(4221~422n)을 제어할 수 있다. 예시적으로, 신호는 호스트(4100) 및 SSD(4200)의 인터페이스에 기반된 신호들일 수 있다. 예를 들어, 신호는 USB (Universal Serial Bus), MMC (multimedia card), eMMC(embedded MMC), PCI (peripheral component interconnection), PCI-E (PCI-express), ATA (Advanced Technology Attachment), Serial-ATA, Parallel-ATA, SCSI (small computer system interface), ESDI (enhanced small disk interface), IDE (Integrated Drive Electronics), 파이어와이어(Firewire), UFS(Universal Flash Storage), WIFI, Bluetooth, NVMe 등과 같은 인터페이스들 중 적어도 하나에 의해 정의된 신호일 수 있다.
복수의 메모리 장치들(4221~422n)은 데이터를 저장하도록 구성된 복수의 메모리 셀들을 포함할 수 있다. 복수의 메모리 장치들(4221~422n) 각각은 도 1에 도시된 메모리 장치(100)와 동일하게 구성될 수 있다. 따라서, 리드 동작 시, 복수의 메모리 장치들(4221~422n) 각각은 비선택된 워드 라인들에 인가되는 패스 전압들을 상술한 실시 예들과 같이 조절할 수 있다. 복수의 메모리 장치들(4221~422n)은 채널들(CH1~CHn)을 통해 컨트롤러(4210)와 통신할 수 있다.
보조 전원 장치(4230)는 전원 커넥터(4002)를 통해 호스트(4100)와 연결된다. 보조 전원 장치(4230)는 호스트(4100)로부터 전원 전압을 입력 받고, 충전할 수 있다. 보조 전원 장치(4230)는 호스트(4100)로부터의 전원 공급이 원활하지 않을 경우, SSD(4200)의 전원 전압을 제공할 수 있다. 예시적으로, 보조 전원 장치(4230)는 SSD(4200) 내에 위치할 수도 있고, SSD(4200) 외부에 위치할 수도 있다. 예를 들면, 보조 전원 장치(4230)는 메인 보드에 위치하며, SSD(4200)에 보조 전원을 제공할 수도 있다.
버퍼 메모리(4240)는 SSD(4200)의 버퍼 메모리로 동작한다. 예를 들어, 버퍼 메모리(4240)는 호스트(4100)로부터 수신된 데이터 또는 복수의 메모리 장치들(4221~422n)로부터 수신된 데이터를 임시 저장하거나, 메모리 장치들(4221~422n)의 메타 데이터(예를 들어, 매핑 테이블)를 임시 저장할 수 있다. 버퍼 메모리(4240)는 DRAM, SDRAM, DDR SDRAM, LPDDR SDRAM 등과 같은 휘발성 메모리 또는 FRAM, ReRAM, STT-MRAM, PRAM 등과 같은 비휘발성 메모리들을 포함할 수 있다.
100: 메모리 장치 110: 메모리 셀 어레이
120: 전압 생성기 130: 로우 디코더
140: 페이지 버퍼 그룹 150: 컬럼 디코더
160: 입출력 회로 170: 주변 회로
180: 제어 회로

Claims (45)

  1. 복수의 서브 블록들을 포함하는 메모리 블록;
    상기 서브 블록들 중 제1 서브 블록에 제1 방식으로 프로그램 및 소거 동작을 수행하고, 제2 서브 블록에 제2 방식으로 프로그램 및 소거 동작을 수행하도록 구성된 주변 회로; 및
    상기 제2 서브 블록에서 수행된 상기 프로그램 및 소거 동작의 싸이클링 횟수가 기준 횟수 이상이면, 상기 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하는 보상 동작이 수행되도록 상기 주변 회로를 제어하는 제어 회로를 포함하는 메모리 장치.
  2. 제1항에 있어서, 상기 주변 회로는,
    상기 제1 방식으로 상기 프로그램 및 소거 동작을 상기 제1 서브 블록에 수행한 후,
    상기 제2 방식으로 상기 프로그램 및 소거 동작을 상기 제2 서브 블록에 수행하는 메모리 장치.
  3. 제1항에 있어서, 상기 제어 회로는,
    상기 서브 블록에서 상기 프로그램 및 소거 동작이 수행될 때마다 상기 싸이클링 횟수를 증가시키는 메모리 장치.
  4. 제1항에 있어서, 상기 제어 회로는,
    상기 싸이클링 횟수가 상기 기준 횟수 이상이면, 상기 보상 동작에서 수행될 재프로그램 동작 및 재소거 동작에 오프셋을 설정하는 메모리 장치.
  5. 제4항에 있어서, 상기 제어 회로는,
    상기 재프로그램 동작의 시작 프로그램 전압에 상기 오프셋을 설정하여, 상기 시작 프로그램 전압이 높아지도록 상기 주변 회로를 제어하는 메모리 장치.
  6. 제4항에 있어서, 상기 제어 회로는,
    상기 재프로그램 동작에서 사용되는 프로그램 전압들 간 전압차에 해당하는 스텝 전압에 상기 오프셋을 설정하여, 상기 스텝 전압이 높아지도록 상기 주변 회로를 제어하는 메모리 장치.
  7. 제4항에 있어서, 상기 제어 회로는,
    상기 재소거 동작에서 사용되는 소거 전압에 상기 오프셋을 설정하여, 상기 소거 전압이 높아지도록 상기 주변 회로를 제어하는 메모리 장치.
  8. 제4항에 있어서, 상기 제어 회로는,
    상기 재프로그램 동작이 수행된 후, 연속적으로 상기 재소거 동작이 수행되도록 상기 주변 회로를 제어하는 메모리 장치.
  9. 제1항에 있어서, 상기 제어 회로는,
    상기 싸이클링 횟수가 상기 기준 횟수 미만이면, 상기 싸이클링 횟수가 상기 기준 횟수 이상이 될 때까지 상기 제2 서브 블록에 제2 방식으로 상기 프로그램 및 상기 소거 동작이 수행되도록 상기 주변 회로를 제어하는 메모리 장치.
  10. 제1항에 있어서, 상기 제어 회로는,
    상기 제1 및 제2 방식들은 서로 다른 프로그램 방식들인 메모리 장치.
  11. 제1항에 있어서, 상기 제어 회로는,
    상기 제1 서브 블록의 상기 보상 동작이 완료되면, 상기 서브 블록들 중 제3 서브 블록에 제3 방식으로 프로그램 및 소거 동작이 수행되도록 상기 주변 회로를 제어하는 메모리 장치.
  12. 제11항에 있어서,
    상기 제3 방식은 상기 제1 및 제2 방식들과 다른 프로그램 방식들인 메모리 장치.
  13. 제12항에 있어서,
    상기 제1 내지 제3 방식들은 SLC(single level cell), MLC(multi level cell), TLC(triple level cell) 및 QLC(quad level cell) 방식들 중에서 선택되는 메모리 장치.
  14. 메모리 블록에 포함된 제1 서브 블록에 제1 방식으로 프로그램 동작 및 소거 동작을 수행하는 단계;
    상기 메모리 블록에 포함된 제2 서브 블록에 제2 방식으로 프로그램 동작 및 소거 동작을 수행하는 단계;
    상기 제2 서브 블록에서 수행된 상기 프로그램 동작 및 소거 동작의 싸이클링 횟수를 기준 횟수와 비교하는 단계; 및
    상기 싸이클링 횟수가 상기 기준 횟수 이상이면, 상기 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하는 보상 동작을 수행하는 단계를 포함하는 메모리 장치의 동작 방법.
  15. 제14항에 있어서,
    상기 제1 및 제2 방식들은 서로 다른 프로그램 방식들인 메모리 장치의 동작 방법.
  16. 제14항에 있어서,
    상기 제1 및 제2 방식들은 SLC(single level cell), MLC(multi level cell), TLC(triple level cell) 및 QLC(quad level cell) 방식들 중에서 선택되는 메모리 장치의 동작 방법.
  17. 제14항에 있어서, 상기 보상 동작을 수행하는 단계는,
    상기 프로그램 동작 및 상기 소거 동작에 오프셋을 설정하는 단계;
    상기 제1 서브 블록에 상기 오프셋이 설정된 재프로그램 동작을 수행하는 단계; 및
    상기 제1 서브 블록에 상기 오프셋이 설정된 재소거 동작을 수행하는 단계를 포함하는 메모리 장치의 동작 방법.
  18. 제17항에 있어서,
    상기 프로그램 동작 및 상기 소거 동작에 오프셋을 설정하는 단계에서,
    상기 프로그램 동작에서 사용될 프로그램 전압들 간 전압차에 해당하는 스텝 전압이 디폴트 레벨보다 높게 설정되는 메모리 장치의 동작 방법.
  19. 제18항에 있어서,
    상기 프로그램 동작 및 상기 소거 동작에 오프셋을 설정하는 단계에서,
    상기 프로그램 동작에서 사용될 시작 프로그램 전압이 디폴트 레벨보다 높게 설정되는 메모리 장치의 동작 방법.
  20. 제18항에 있어서,
    상기 프로그램 동작 및 상기 소거 동작에 오프셋을 설정하는 단계에서,
    상기 소거 동작에서 사용될 소거 전압이 디폴트 레벨보다 높게 설정되는 메모리 장치의 동작 방법.
  21. 제14항에 있어서,
    상기 싸이클링 횟수가 상기 기준 횟수 미만이면, 상기 싸이클링 횟수가 상기 기준 횟수 이상이 될 때까지 상기 제2 서브 블록에 상기 제2 방식으로 상기 프로그램 동작 및 상기 소거 동작이 수행되는 메모리 장치의 동작 방법.
  22. 제14항에 있어서,
    상기 제1 서브 블록의 상기 보상 동작이 완료되면, 상기 서브 블록들 중 제3 서브 블록에 제3 방식으로 프로그램 동작 및 소거 동작이 수행되는 메모리 장치의 동작 방법.
  23. 제22항에 있어서,
    상기 제3 방식은 상기 제1 및 제2 방식들과 다른 프로그램 방식인 메모리 장치의 동작 방법.
  24. 복수의 서브 블록들을 포함하는 메모리 블록;
    상기 서브 블록들 중 제1 서브 블록에 제1 방식으로 프로그램 동작을 수행하고, 제2 서브 블록에 제2 방식으로 프로그램 동작을 수행하도록 구성된 주변 회로; 및
    상기 제2 서브 블록에서 수행되는 상기 프로그램 동작의 프로그램 횟수가 기준 횟수 이상이면, 상기 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하는 보상 동작이 수행되도록 상기 주변 회로를 제어하는 제어 회로를 포함하는 메모리 장치.
  25. 제24항에 있어서, 상기 주변 회로는,
    상기 제1 서브 블록에 상기 제1 방식으로 상기 프로그램 동작을 수행한 후, 상기 제2 서브 블록에 상기 제2 방식으로 상기 프로그램 동작을 수행하는 메모리 장치.
  26. 제24항에 있어서, 상기 제어 회로는,
    상기 프로그램 횟수가 상기 기준 횟수 이상이면, 상기 보상 동작에서 수행될 재소거 동작 및 재프로그램 동작 각각에 오프셋을 설정하는 메모리 장치.
  27. 제26항에 있어서, 상기 제어 회로는,
    상기 재소거 동작에 사용될 소거 전압이 높아지도록, 상기 소거 전압에 상기 오프셋이 설정되도록 상기 주변 회로를 제어하는 메모리 장치.
  28. 제26항에 있어서, 상기 제어 회로는,
    상기 재프로그램 동작에 사용될 시작 프로그램 전압이 높아지도록, 상기 시작 프로그램 전압에 상기 오프셋이 설정되도록 상기 주변 회로를 제어하는 메모리 장치.
  29. 제26항에 있어서, 상기 제어 회로는,
    상기 재프로그램 동작에서 사용되는 프로그램 전압들 간 전압차에 해당하는 스텝 전압이높아지도록, 상기 스텝 전압에 상기 오프셋이 설정되도록 상기 주변 회로를 제어하는 메모리 장치.
  30. 제26항에 있어서, 상기 제어 회로는,
    상기 재소거 동작이 수행된 후, 연속적으로 상기 재프로그램 동작이 수행되도록 상기 주변 회로를 제어하는 메모리 장치.
  31. 제24항에 있어서, 상기 제어 회로는,
    상기 프로그램 횟수가 상기 기준 횟수 미만이면, 상기 프로그램 횟수가 상기 기준 횟수 이상이 될 때까지 상기 제2 서브 블록에 상기 제2 방식으로 상기 프로그램 및 소거 동작이 수행되도록 상기 주변 회로를 제어하는 메모리 장치.
  32. 제24항에 있어서, 상기 제어 회로는,
    상기 제1 및 제2 방식들은 서로 다른 프로그램 방식들인 메모리 장치.
  33. 제24항에 있어서, 상기 제어 회로는,
    상기 제1 서브 블록의 상기 보상 동작이 완료되면, 상기 서브 블록들 중 제3 서브 블록에 제3 방식으로 프로그램 동작이 수행되도록 상기 주변 회로를 제어하는 메모리 장치.
  34. 제33항에 있어서,
    상기 제3 방식은 상기 제1 및 제2 방식들과 다른 프로그램 방식들인 메모리 장치.
  35. 제34항에 있어서,
    상기 제1 내지 제3 방식들은 SLC(single level cell), MLC(multi level cell), TLC(triple level cell) 및 QLC(quad level cell) 방식들 중에서 선택되는 메모리 장치.
  36. 메모리 블록에 포함된 제1 서브 블록에 제1 방식으로 프로그램 동작을 수행하는 단계;
    상기 메모리 블록에 포함된 제2 서브 블록에 제2 방식으로 프로그램 동작을 수행하는 단계;
    상기 제2 서브 블록에서 수행된 상기 프로그램 동작의 프로그램 횟수를 기준 횟수와 비교하는 단계; 및
    상기 프로그램 횟수가 상기 기준 횟수 이상이면, 상기 제1 서브 블록에 포함된 메모리 셀들의 문턱전압을 보상하는 보상 동작을 수행하는 단계를 포함하는 메모리 장치의 동작 방법.
  37. 제36항에 있어서,
    상기 제1 및 제2 방식들은 서로 다른 프로그램 방식들인 메모리 장치의 동작 방법.
  38. 제36항에 있어서,
    상기 제1 및 제2 방식들은 SLC(single level cell), MLC(multi level cell), TLC(triple level cell) 및 QLC(quad level cell) 방식들 중에서 선택되는 메모리 장치의 동작 방법.
  39. 제36항에 있어서, 상기 보상 동작을 수행하는 단계는,
    상기 소거 동작 및 상기 프로그램 동작에 오프셋을 설정하는 단계;
    상기 제1 서브 블록에 상기 오프셋이 설정된 재소거 동작을 수행하는 단계; 및
    상기 제1 서브 블록에 상기 오프셋이 설정된 재프로그램 동작을 수행하는 단계를 포함하는 메모리 장치의 동작 방법.
  40. 제39항에 있어서,
    상기 오프셋을 설정하는 단계에서,
    상기 소거 동작에서 사용될 소거 전압이 디폴트 레벨보다 높게 설정되는 메모리 장치의 동작 방법.
  41. 제39항에 있어서,
    상기 오프셋을 설정하는 단계에서,
    상기 프로그램 동작에서 사용될 프로그램 전압들 간 전압차에 해당하는 스텝 전압이 디폴트 레벨보다 높게 설정되는 메모리 장치의 동작 방법.
  42. 제39항에 있어서,
    상기 오프셋을 설정하는 단계에서,
    상기 프로그램 동작에서 사용될 시작 프로그램 전압이 디폴트 레벨보다 높게 설정되는 메모리 장치의 동작 방법.
  43. 제36항에 있어서,
    상기 프로그램 횟수가 상기 기준 횟수 미만이면, 상기 프로그램 횟수가 상기 기준 횟수 이상이 될 때까지 상기 제2 서브 블록에 상기 제2 방식으로 상기 프로그램 동작 및 상기 소거 동작이 수행되는 메모리 장치의 동작 방법.
  44. 제36항에 있어서,
    상기 제1 서브 블록의 상기 보상 동작이 완료되면, 상기 서브 블록들 중 제3 서브 블록에 제3 방식으로 프로그램 동작이 수행되는 메모리 장치의 동작 방법.
  45. 제44항에 있어서,
    상기 제3 방식은 상기 제1 및 제2 방식들과 다른 프로그램 방식인 메모리 장치의 동작 방법.
KR1020220132326A 2022-10-14 2022-10-14 메모리 장치 및 이의 동작 방법 KR20240052367A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220132326A KR20240052367A (ko) 2022-10-14 2022-10-14 메모리 장치 및 이의 동작 방법
US18/296,789 US20240127892A1 (en) 2022-10-14 2023-04-06 Memory device and operating method of the memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220132326A KR20240052367A (ko) 2022-10-14 2022-10-14 메모리 장치 및 이의 동작 방법

Publications (1)

Publication Number Publication Date
KR20240052367A true KR20240052367A (ko) 2024-04-23

Family

ID=90626745

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220132326A KR20240052367A (ko) 2022-10-14 2022-10-14 메모리 장치 및 이의 동작 방법

Country Status (2)

Country Link
US (1) US20240127892A1 (ko)
KR (1) KR20240052367A (ko)

Also Published As

Publication number Publication date
US20240127892A1 (en) 2024-04-18

Similar Documents

Publication Publication Date Title
US11164644B2 (en) Storage device and method of operating the same
US8942048B2 (en) Semiconductor device and method of operating the same
KR20180027276A (ko) 반도체 메모리 장치 및 그 동작 방법
KR20190006760A (ko) 반도체 메모리 장치 및 그것의 동작 방법
KR20170079832A (ko) 반도체 메모리 장치 및 그것의 동작 방법
CN112885394B (zh) 存储器装置和操作该存储器装置的方法
US11443809B2 (en) Memory device and method of operating the same
US11646084B2 (en) Memory device performing program operation and method of operating the same
KR20140079913A (ko) 불휘발성 메모리 장치 및 이의 프로그램 방법
CN115798552A (zh) 存储器装置及该存储器装置的操作方法
CN114792541A (zh) 存储器设备和操作该存储器设备的方法
KR20240052367A (ko) 메모리 장치 및 이의 동작 방법
US11657885B2 (en) Memory device and method of operating the memory device
US20240145008A1 (en) Memory device and operating method of the memory device
US20240177766A1 (en) Memory device and method of operating the same
US20240161834A1 (en) Memory device and method of operating the memory device
US20240028217A1 (en) Memory device and method of operating the memory device
US20240069746A1 (en) Memory device and method of operating the same
EP4339954A1 (en) Storage device including flash memory and block continuous-write operation method thereof
US20240012568A1 (en) Memory device and operating method of the memory device
US20240020015A1 (en) Controller and method of operating the same
US20220108750A1 (en) Memory device and method of operating the memory device
KR20240071118A (ko) 메모리 장치 및 이의 동작 방법
KR20240077026A (ko) 메모리 장치 및 이의 동작 방법
CN114078542A (zh) 存储器装置及其操作方法