KR20180060885A - 리줌 동작을 제어하는 불휘발성 메모리 장치의 동작 방법 - Google Patents

리줌 동작을 제어하는 불휘발성 메모리 장치의 동작 방법 Download PDF

Info

Publication number
KR20180060885A
KR20180060885A KR1020170021728A KR20170021728A KR20180060885A KR 20180060885 A KR20180060885 A KR 20180060885A KR 1020170021728 A KR1020170021728 A KR 1020170021728A KR 20170021728 A KR20170021728 A KR 20170021728A KR 20180060885 A KR20180060885 A KR 20180060885A
Authority
KR
South Korea
Prior art keywords
program
erase
program operation
memory device
loops
Prior art date
Application number
KR1020170021728A
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 US15/825,786 priority Critical patent/US10431315B2/en
Priority to CN201711223276.6A priority patent/CN108122582B/zh
Publication of KR20180060885A publication Critical patent/KR20180060885A/ko
Priority to US16/561,570 priority patent/US10910077B2/en

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/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • G11C16/225Preventing erasure, programming or reading when power supply voltages are outside the required ranges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Read Only Memory (AREA)

Abstract

불휘발성 메모리 장치의 서스펜드 및 리줌 동작을 제어하는 동작 방법이 개시된다. 메모리 콘트롤러는, 불휘발성 메모리 장치의 프로그램 또는 소거 동작이 중단된 후 재개될 때까지의 리줌 시간이 프로그램 또는 소거 신뢰성의 기준 시간을 경과하였는지 여부에 따라, 해당 리줌 동작을 제어한다. 메모리 콘트롤러는 기준 시간 이내에 중단된 프로그램 또는 소거 동작이 재개되도록 제어한다.

Description

리줌 동작을 제어하는 불휘발성 메모리 장치의 동작 방법 {Operation method of resuming an operation of nonvolatile memory device}
본 발명은 반도체 메모리에 관한 것으로서, 더욱 상세하게는 불휘발성 메모리 장치의 프로그램 또는 삭제 동작이 중단(suspend)된 후 재개(resume)될 때까지의 리줌 시간에 따라 해당 리줌 동작을 제어하여 불휘발성 메모리 장치의 신뢰성을 향상시키는 동작 방법에 관한 것이다.
불휘발성 메모리 장치들 중 플래시 메모리는 대용량, 저소음, 저전력의 장점들을 갖기 때문에, 다양한 분야의 메모리 시스템에 사용되고 있다. 플래시 메모리에서, 프로그램 및 삭제 동작은 상당히 긴 시간 동안 수행된다. 프로그램 또는 삭제 동작이 시작되면, 프로그램 또는 삭제 동작이 끝날 때까지 데이터 검색(retrieve)을 위한 플래시 메모리의 억세스가 허용되지 않을 수 있는데, 이 경우 메모리 시스템의 성능이 저하될 수 있다.
플래시 메모리로부터의 데이터 검색을 위해, 메모리 시스템은 현재 동작중인 프로그램 또는 삭제 동작을 일시적으로 중단하는 서스펜드 동작과 데이터 검색을 위한 읽기 동작을 수행할 수 있다. 이 후, 메모리 시스템은 리줌 커맨드에 의해 중단된 프로그램 또는 삭제 동작을 재개하는 리줌 동작을 수행할 수 있다. 서스펜드 및 리줌 동작의 빈도(frequency)는 메모리 시스템에 요구된 서비스 품질(Quality of Service: QoS)에 의해 결정될 수 있다. QoS가 데이터 검색을 위한 독출 레이턴시로서 최대 1ms을 요구한다면, 프로그램 또는 삭제 동작이 중단되고 읽기 커맨드에 의한 읽기 동작이 완료되는데 걸리는 시간이 거의 1ms 정도로 예상될 것이고, 이 후 리줌 동작이 재개될 수 있을 것이다.
그런데, 플래시 메모리의 멀티 비트 메모리 셀의 특성들과 스케일링 다운 등으로 인하여, 프로그램 동작 후 메모리 셀들의 문턱 전압 산포가 시프트될 수 있다. 특히, 프로그램 동작이 데이터 검색을 위한 읽기 동작에 의해 중단된 후 재개되면, 프로그램 시간은 읽기 동작에 소요된 시간만큼 길어질 수 있다. 프로그램 동작이 중단된 후 재개될 때까지의 리줌 시간에 의해 프로그램 시간이 길어지면, 메모리 셀들의 문턱 전압 산포가 변형되어 해당 프로그램 동작이 페일(fail)되는 문제가 발생된다.
본 발명의 목적은 불휘발성 메모리 장치의 동작이 중단된 후 재개될 때까지의 리줌 시간에 따라 해당 리줌 동작을 제어하여 불휘발성 메모리 장치의 신뢰성을 향상시키는 동작 방법을 제공하는 것이다.
본 발명의 실시예들에 따르면, 복수의 프로그램 루프들을 순차적으로 수행하여 선택 워드라인에 연결되는 메모리 셀들을 프로그램하는 불휘발성 메모리 장치의 동작 방법은, 복수의 프로그램 루프들 중에서 적어도 하나의 프로그램 루프를 포함하는 프로그램 동작을 수행하는 단계, 프로그램 동작이 수행된 이후에 상기 프로그램 동작을 중단하는 단계, 그리고 프로그램 동작이 중단된 시점으로부터 기준 시간 내에 복수의 프로그램 루프들 중 나머지 프로그램 루프들을 수행하도록 프로그램 동작을 재개하는 단계를 포함한다.
본 발명의 실시예들에 따르면, 복수의 소거 루프들을 순차적으로 수행하여 복수의 메모리 블록들 중 선택된 메모리 블록을 소거하는 불휘발성 메모리 장치의 동작 방법은, 복수의 소거 루프들 중에서 적어도 하나의 소거 루프를 포함하는 소거 동작의 제1 부분을 수행하는 단계, 소거 동작의 제1 부분이 수행된 이후에 소거 동작을 중단하는 단계, 그리고 소거 동작이 중단된 시점으로부터 기준 시간 내에 복수의 소거 루프들 중 나머지 소거 루프들을 수행하도록 소거 동작을 재개하는 단계를 포함한다.
본 발명의 실시예들에 따르면, 복수의 프로그램 루프들을 순차적으로 수행하여 선택 워드라인에 연결되는 메모리 셀들을 프로그램하는 불휘발성 메모리 장치의 동작 방법은, 복수의 프로그램 루프들 중에서 적어도 하나의 프로그램 루프를 포함하는 프로그램 동작의 제1 부분을 수행하는 단계, 프로그램 동작의 제1 부분이 수행된 이후에 프로그램 동작을 중단하는 단계, 그리고 프로그램 동작이 중단된 후 프로그램 동작을 재개하는 단계를 포함하고, 프로그램 동작이 중단된 후 재개될 때까지의 리줌 시간에 따라 선택 워드라인 또는 선택 워드라인과는 다른 워드라인에 대하여 프로그램 동작을 재개한다.
본 발명의 실시예들에 따르면, 복수의 소거 루프들을 순차적으로 수행하여 복수의 메모리 블록들 중 선택된 메모리 블록을 소거하는 불휘발성 메모리 장치의 동작 방법은, 복수의 소거 루프들 중에서 적어도 하나의 소거 루프를 포함하는 소거 동작의 제1 부분을 수행하는 단계, 소거 동작의 제1 부분이 수행된 이후에 소거 동작을 중단하는 단계, 그리고 소거 동작이 중단된 후 소거 동작을 재개하는 단계를 포함하고, 소거 동작이 중단된 후 재개될 때까지의 리줌 시간에 따라 복수의 소거 루프들 중 나머지 소거 루프들을 수행하거나 복수의 소거 루프들을 처음부터 다시 수행한다.
본 발명에 따르면, 프로그램 또는 소거 동작이 중단된 후 재개될 때까지의 리줌 시간에 따라 해당 리줌 동작을 제어함에 따라 문턱 전압 산포 시프트로 인한 왜곡(distortion) 또는 페일 문제를 해결하여 불휘발성 메모리 장치의 신뢰성을 향상시킬 수 있다.
도 1은 본 발명의 실시예에 따른 메모리 시스템을 보여주는 블록도이다.
도 2는 도 1의 메모리 셀 어레이의 일 예를 나타내는 회로도이다.
도 3은 도 2의 메모리 블록에 대응하는 구조를 보여주는 사시도이다.
도 4는 도 3에 도시된 메모리 셀들의 문턱 전압 산포를 예시적으로 보여주는 산포도이다.
도 5는 도 4의 문턱 전압 산포를 형성하기 위한 프로그램 방법을 예시적으로 보여주는 도면이다.
도 6은 본 발명의 실시예에 따른 프로그램 동작을 보여주는 타이밍도이다.
도 7 및 도 8은 도 6의 프로그램 동작에 의한 문턱 전압 산포를 보여주는 도면들이다.
도 9는 본 발명의 실시예에 따른 불휘발성 메모리 장치의 프로그램 동작을 보여주는 순서도이다.
도 10 및 도 11은 도 9의 프로그램 방법을 설명하기 위한 도면들이다.
도 12 및 도 13은 본 발명의 다른 실시예에 따른 불휘발성 메모리 장치의 프로그램 방법을 설명하는 도면들이다.
도 14 및 도 15는 본 발명의 또 다른 실시예에 따른 불휘발성 메모리 장치의 프로그램 방법을 설명하는 도면들이다.
도 16은 본 발명의 또 다른 실시예에 따른 불휘발성 메모리 장치의 프로그램 동작을 보여주는 순서도이다.
도 17 내지 도 19는 도 1의 불휘발성 메모리 장치의 소거 동작을 설명하는 도면들이다.
도 20은 본 발명의 실시예에 따른 소거 동작을 보여주는 타이밍도이다.
도 21은 본 발명의 실시예에 따른 불휘발성 메모리 장치의 소거 동작을 보여주는 순서도이다.
도 22 및 도 23은 도 21의 소거 방법을 설명하기 위한 도면들이다.
도 24 및 도 25는 본 발명의 다른 실시예에 따른 불휘발성 메모리 장치의 소거 방법을 설명하는 도면들이다.
도 26 및 도 27은 본 발명의 또 다른 실시예에 따른 불휘발성 메모리 장치의 소거 방법을 설명하는 도면들이다.
도 28 및 도 29는 본 발명의 또 다른 실시예에 따른 불휘발성 메모리 장치의 소거 방법을 설명하는 도면들이다.
도 30은 본 발명의 또 다른 실시예에 따른 불휘발성 메모리 장치의 소거 동작을 보여주는 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 설명할것이지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이하에서 기술하는 실시 예에는 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
도 1은 본 발명의 실시예에 따른 메모리 시스템을 보여주는 블록도이다.
도 1을 참조하면, 메모리 시스템(100)은 메모리 콘트롤러(110)와 불휘발성 메모리 장치(120)를 포함한다.
메모리 콘트롤러(110)는 호스트(Host)의 요청에 응답하여 불휘발성 메모리 장치(120)를 제어하도록 구성될 수 있다. 메모리 콘트롤러(110)는 호스트(Host)와 불휘발성 메모리 장치(120)를 인터페이싱할 수 있다. 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)에 데이터를 기입하거나, 또는 불휘발성 메모리 장치(120)에 저장된 데이터를 읽을 수 있다.
메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)에 데이터(DATA)를 기입하기 위하여, 어드레스(ADDR), 프로그램 커맨드(CMD) 및 데이터(DATA)를 불휘발성 메모리 장치(120)로 전송할 수 있다. 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)에 저장된 데이터(DATA)를 읽기 위하여, 어드레스(ADDR) 및 읽기 커맨드(CMD)를 불휘발성 메모리 장치(120)로 전송할 수 있다.
불휘발성 메모리 장치(120)는 낸드 플래시 메모리, 노어 플래시 메모리, 상 변화 메모리(PRAM), 저항 메모리(ReRAM), 자기 저항 메모리(MRAM) 등과 같은 불휘발성 메모리 소자들을 포함할 수 있다. 본 발명에서 불휘발성 메모리 장치(120)는 낸드 플래시 메모리를 기반으로 설명된다. 예시적으로, 불휘발성 메모리 장치(120)는 전하 포획 플래시(Charge Trap Flash) 메모리를 기반으로 설명될 것이다.
불휘발성 메모리 장치(120)는 메모리 콘트롤러(110)의 제어에 따라 동작할 수 있다. 예를 들어, 불휘발성 메모리 장치(120)는 메모리 콘트롤러(110)로부터 수신된 신호들에 응답하여 데이터(DATA)의 쓰기, 읽기, 소거 등의 동작을 수행할 수 있다. 불휘발성 메모리 장치(120)는 행들 (워드라인들) 및 열들 (비트라인들)로 배열된 메모리 셀들을 갖는 메모리 셀 어레이(122)를 포함한다.
메모리 셀 어레이(122)는 단층 어레이 구조(single-layer array structure, 또는 2차원 어레이 구조)의 플래너(planar) 타입의 낸드 스트링을 포함할 수 있다. 또는 메모리 셀 어레이(122)는 다층 어레이 구조(multi-layer array structure, 또는 3 차원 (3D) 어레이 구조)를 갖도록 구현될 수 있다. 3D 메모리 어레이는 적어도 하나의 메모리 셀이 다른 메모리 셀의 위에 위치하도록 수직 방향으로 배치된 낸드 스트링들을 포함한다.
메모리 셀 어레이(122)는 복수의 메모리 블록들(BLK1 내지 BLKn)을 포함할 수 있다. 각 메모리 블록(BLK1~BLKn)은 복수의 메모리 셀들 및 복수의 선택 트랜지스터들을 포함할 수 있다. 메모리 셀들은 워드라인들(WL)에 연결되고, 선택 트랜지스터들은 스트링 선택 라인들(SSL) 또는 그라운드 선택 라인들(GSL)에 연결될 수 있다. 각 메모리 블록(BLK1~BLKn)의 메모리 셀들은 1-비트 데이터를 저장하는 싱글 레벨 셀들 또는 M(M은 2 또는 그 보다 큰 정수)-비트 데이터를 저장하는 멀티 레벨 셀들로 구성될 수 있다. 각 메모리 블록(BLK1~BLKn)의 메모리 셀들은 기판과 수직인 방향으로 적층되어 3차원 구조를 형성할 수 있다. 메모리 블록의 구조는 도 2 및 도 3을 참조하여 상세하게 설명될 것이다.
예시적으로, 불휘발성 메모리 장치(120)는 페이지 단위로 데이터를 프로그램하거나 또는 읽을 수 있다. 페이지는 하나의 워드라인에 연결된 메모리 셀들을 가리킬 수 있다. 불휘발성 메모리 장치(120)의 프로그램 동작 시, 하나의 페이지가 선택되고 선택된 페이지에 연결된 메모리 셀들이 프로그램될 수 있다. 불휘발성 메모리 장치(120)는 블록 단위로 소거 동작을 수행할 수 있다. 메모리 셀 어레이(122)에 포함된 메모리 블록(BLK1~BLKn) 중 적어도 하나의 메모리 블록이 소거될 때 기판으로 소거 전압이 인가될 수 있다.
메모리 콘트롤러(110)는 에러 정정 코드 엔진(112, ECC Engine: Error Correct Code Engine) 및 서스펜드/리줌 동작부(114)를 포함할 수 있다. ECC 엔진(112)은 불휘발성 메모리 장치(120)에 저장될 데이터에 대하여 에러 정정 코드를 생성할 수 있다. 생성된 에러 정정 코드는 불휘발성 메모리 장치의 스페어 영역에 저장될 수 있다. ECC 엔진(112)은 에러 정정 코드를 기반으로 불휘발성 메모리 장치(120)로부터 읽은 데이터(DATA)의 에러를 검출 및 정정할 수 있다. 예시적으로, 불휘발성 메모리 장치(120)로부터 읽은 데이터(DATA)는 에러 정정 코드를 포함할 수 있다.
서스펜드/리줌 동작부(114)는, 불휘발성 메모리 장치(120)의 복수의 워드라인들 중 선택 워드라인의 프로그램 동작을 제어하고, 외부로부터의 검색 요청에 의해 프로그램 동작을 중단하고, 프로그램 동작이 중단된 후 재개될 때까지의 리줌 시간에 따라 선택 워드라인 또는 선택 워드라인과는 다른 워드라인에 대하여 프로그램 동작을 재개할 수 있다. 또는 서스펜드/리줌 동작부(114)는, 불휘발성 메모리 장치(120)의 선택 메모리 블록의 소거 동작을 제어하고, 외부로부터의 검색 요청에 의해 소거 동작을 중단하고, 소거 동작이 중단된 후 재개될 때까지의 리줌 시간에 따라 선택 메모리 블록의 나머지 소거 동작을 수행하도록 또는 선택 메모리 블록의 소거 동작을 다시 시작하도록 소거 동작을 재개할 수 있다.
도 2는 도 1의 메모리 셀 어레이의 일 예를 나타내는 회로도이다. 도 2는 도 1에서 설명된 메모리 블록들(BLK1~BLKn) 중에서 제1 메모리 블록(BLK1)의 일부분에 대하여 설명되나, 본 발명의 범위가 이에 한정되는 것은 아니며, 다른 메모리 블록들(BLK2-BLKn) 또한 제1 메모리 블록(BLK1)과 동일한 구조를 가질 수 있다.
제1 메모리 블록(BLK1)은 복수의 낸드 스트링들(NS11 내지 NS22), 복수의 워드 라인들(WL1 내지 WL8), 복수의 비트 라인들(BL1, BL2), 그라운드 선택 라인들(GSL), 스트링 선택 라인들(SSL1, SSL2) 및 공통 소스 라인(CSL)을 포함할 수 있다. 스트링 선택 라인(SSL)은 제1 및 제2 스트링 선택 라인들(SSL1, SSL2)로 분리될 수 있다. 여기서, 낸드 스트링들의 개수, 워드 라인들의 개수, 비트 라인들의 개수, 그라운드 선택 라인의 개수 및 스트링 선택 라인의 개수는 실시예에 따라 다양하게 변경될 수 있다.
제1 비트 라인(BL1)과 공통 소스 라인(CSL) 사이에 낸드 스트링들(NS11, NS21)이 제공되고, 제2 비트 라인(BL2)과 공통 소스 라인(CSL) 사이에 낸드 스트링들(NS12, NS22)이 제공된다. 각 낸드 스트링(예를 들면, NS11)은 직렬로 연결된 스트링 선택 트랜지스터(SST), 복수의 메모리 셀들(MC1 내지 MC8) 및 그라운드 선택 트랜지스터(GST)를 포함할 수 있다.
스트링 선택 트랜지스터(SST)는 대응하는 스트링 선택 라인(SSL1, SSL2)에 연결된다. 복수의 메모리 셀들(MC1 내지 MC8)은 각각 대응하는 워드 라인(WL1 내지 WL8)에 연결된다. 그라운드 선택 트랜지스터(GST)는 대응하는 그라운드 선택 라인(GSL)에 연결된다. 스트링 선택 트랜지스터(SST)는 대응하는 비트 라인(BL1, BL2)에 연결되고, 그라운드 선택 트랜지스터(GST)는 공통 소스 라인(CSL)에 연결된다.
도 3은 도 2의 메모리 블록에 대응하는 구조를 보여주는 사시도이다.
도 3을 참조하면, 메모리 블록(BLK1)는 기판(SUB)에 대해 수직 방향으로 형성되어 있다. 도 3에서는, 메모리 블록(BLK1)이 2개의 선택 라인들(GSL, SSL), 8개의 워드 라인들(WL1 내지 WL8), 그리고 3개의 비트 라인들(BL1 내지 BL3)을 포함하는 것으로 도시되어 있으나, 실제로는 이것들보다 더 많거나 적을 수 있다.
기판(SUB)은 제1 도전형(예를 들어, p-타입)을 가지며, 기판(SUB) 상에 제1 방향(예를 들어, Y 방향)을 따라 신장되고, 제2 도전형(예를 들어, n-타입)의 불순물들이 도핑된 공통 소스 라인(CSL)이 제공된다. 인접한 두 공통 소스 라인(CSL) 사이의 기판(SUB)의 영역 상에, 제1 방향을 따라 신장되는 복수의 절연막들(IL)이 제3 방향(예를 들어, Z 방향)을 따라 순차적으로 제공되며, 복수의 절연막들(IL)은 제3 방향을 따라 특정 거리만큼 이격된다. 예를 들어, 복수의 절연막들(IL)은 실리콘 산화물과 같은 절연 물질을 포함할 수 있다.
인접한 두 공통 소스 라인들(CSL) 사이의 기판(SUB)의 영역 상에, 제1 방향을 따라 순차적으로 배치되며, 제3 방향을 따라 복수의 절연막들(IL)을 관통하는 복수의 필라들(pillars, P)이 제공된다. 인접한 두 공통 소스 라인들(CSL) 사이의 영역에서, 절연막들(IL), 필라들(P) 및 기판(SUB)의 노출된 표면을 따라 전하 저장층(charge storage layer, CS)이 제공된다. 전하 저장층(CS)은 게이트 절연층(또는 '터널링 절연층'이라고 지칭함), 전하 트랩층 및 블로킹 절연층을 포함할 수 있다.
복수의 필라들(P) 상에는 드레인들 또는 드레인 컨택들(DR)이 각각 제공된다. 드레인들(DR) 상에, 제2 방향(예를 들어, X 방향)으로 신장되고 제1 방향을 따라 특정 거리만큼 이격되어 배치된 비트 라인들(BL1 내지 BL3)이 제공된다. 각 필라(P)는 절연막(IL) 및 제3 방향을 따라 신장되는 선택 라인들(CSL, SSL)과 워드라인들(WL1 내지 WL8)과 함께 낸드 스트링(NS)을 형성한다. 낸드 스트링(NS)은 복수의 트랜지스터 구조들(TS)을 포함한다. 트랜지스터 구조들(TS) 각각은 전하 포획 플래시(Charge Trap Flash: CTF) 메모리 셀로 구성될 수 있다.
도 4는 도 3에 도시된 메모리 셀들의 문턱 전압 산포를 예시적으로 보여주는 산포도이다. 도 5는 도 4의 문턱 전압 산포를 형성하기 위한 프로그램 방법을 예시적으로 보여주는 도면이다. 이하에서, 간결한 설명을 위하여, 메모리 셀들 각각은 3-비트 멀티 레벨 셀(TLC)인 것으로 가정한다. 본 발명의 범위가 이에 한정되는 것은 아니며, 메모리 셀들 각각은 2-비트 멀티 레벨 셀(MLC) 또는 4-비트 이상의 비트를 저장하는 멀티 레벨 셀일 수 있다.
도 4를 참조하면, 가로축은 문턱 전압(Vth)을 나타내고, 세로축은 메모리 셀들(MC)의 개수를 나타낸다. 복수의 메모리 셀들은 소거 상태(E)를 가질 수 있다. 소거 상태를 갖는 복수의 메모리 셀들은 소거 상태(E) 및 제1 내지 제7 프로그램 상태들(P1~P7) 중 하나를 갖도록 프로그램될 수 있다.
예시적으로, 불휘발성 메모리 장치(120, 도 1)는, 도 5에 도시된 바와 같이, 복수의 프로그램 루프들(PL1~PLn)을 수행하여 복수의 메모리 셀들이 소거 상태(E) 및 제1 내지 제7 프로그램 상태들(P1~P7) 중 하나를 갖도록 프로그램할 수 있다. 복수의 프로그램 루프들(PL1~PLn) 각각은 프로그램 펄스들(Vpgm1~VpgmN)을 인가하는 프로그램 단계와 검증 전압들(Vvfy1~Vvfy7)을 인가하는 검증 단계를 포함할 수 있다.
예를 들어, 제1 프로그램 루프(PL1)가 수행될 때, 제1 프로그램 펄스(Vpgm1)가 인가된 후에 메모리 셀들의 프로그램 상태를 검증하기 위한 검증 전압들(Vvfy1~Vvfy7)이 순차적으로 인가될 수 있다. 각 검증 전압들(Vvfy1~Vvfy7)에 의해 검증 통과(verify pass)된 메모리 셀들은 목표 프로그램 상태를 갖는 것으로 판별되고, 이 후 제2 프로그램 루프(PL2)에서 프로그램 금지(program inhibit)될 것이다. 검증 통과는 대응하는 검증 전압에 의해 메모리 셀이 오프-셀(off-cell)로 판독된 것을 가리킨다. 제2 프로그램 루프(PL2)에서 프로그램 금지된 메모리 셀들을 제외한 나머지 메모리 셀들을 프로그램하기 위하여 제1 프로그램 펄스(Vpgm1)보다 프로그램 전압 증가량(Vpgm) 만큼 높은 제2 프로그램 펄스(Vpgm2)가 인가된다. 이 후, 제1 프로그램 루프(PL1)의 검증 단계와 동일하게 검증 동작이 수행된다.
상술한 바와 같이, 불휘발성 메모리 장치(120)가 3-비트를 저장하는 멀티 레벨 셀(TLC)을 프로그램하는 동작은 상당히 긴 시간이 소요된다. 프로그램 동작 중에 데이터 검색을 위한 억세스 동작이 호스트로부터 요청될 수 있다. 이 경우, 메모리 콘트롤러(110)는 서스펜드 및 리줌 커맨드를 발행하여 불휘발성 메모리 장치(120)의 프로그램 동작을 중단시키고, 데이터 검색을 위한 읽기 동작이 수행되도록 읽기 커맨드를 불휘발성 메모리 장치(120)로 발행할 수 있다.
도 6은 본 발명의 실시예에 따른 프로그램 동작을 보여주는 타이밍도이다. 도 7 및 도 8은 도 6의 프로그램 동작에 의한 문턱 전압 산포를 보여주는 도면들이다. 도 7은 서스펜드 동작 이전의 문턱 전압 산포를 나타내고, 도 8은 리줌 동작 이후의 문턱 전압 산포를 나타낸다.
도 1과 연계하여 도 6을 참조하면, 메모리 콘트롤러(110)는 호스트로부터의 기입 요청이 발생하면, 불휘발성 메모리 장치(120)로 프로그램 커맨드(PGM CMD)를 발행한다. 프로그램 커맨드(PGM CMD)는 프로그램되는 메모리 셀의 어드레스(ADDR)와 함께 제공될 것이다.
t0 시점에서, 불휘발성 메모리 장치(120)는 레디/비지 신호(RnBx) 신호를 로우 레벨로 출력하여 외부로 비지 상태(Busy state)임을 알릴 수 있다. 레디/비지 신호(RnBx) 신호가 로우 레벨을 유지하는 시간은 불휘발성 메모리 장치(120)가 프로그램 동작의 일부(PGM_a)를 수행하고 있음을 의미한다. 레디/비지 신호(RnBx) 신호를 비지 상태로 출력함과 동시에, 불휘발성 메모리 장치(120)는 선택된 메모리 셀의 워드라인으로 프로그램 펄스(Vpgm)과 검증 전압(Vvfy)을 인가하는 프로그램 루프들(PL)을 수행할 수 있다.
불휘발성 메모리 장치(120)의 프로그램 동작 중에 호스트로부터의 검색 요청이 발생할 수 있다. 메모리 콘트롤러(110)는 t1 시점에서 불휘발성 메모리 장치(120)로 서스펜드 커맨드(SSPD CMD)를 발행할 수 있다.
t2 시점에서, 불휘발성 메모리 장치(120)는 프로그램 동작을 일시 중단하는 서스펜드 동작을 수행할 수 있다. 이와 더불어, 불휘발성 메모리 장치(120)는 레디/비지 신호(RnBx) 신호를 하이 레벨로 변경하여 외부로 레디 상태(Ready state)임을 알릴 수 있다. 이 때, 메모리 콘트롤러(110)는 데이터 검색을 위하여 불휘발성 메모리 장치(120)로 읽기 커맨드(RD CMD)을 발행할 수 있다. 읽기 커맨드(RD CMD)는 독출될 메모리 셀의 어드레스(ADDR)와 함께 제공될 것이다.
t0 시점에서 t2 시점까지 수행된 프로그램 동작(PGM_a)에 따른 메모리 셀들의 문턱 전압 산포는 도 7과 같이 나타날 것이다. 예시적으로, 도 7에서 메모리 셀들이 소거 상태(E), 제1 프로그램 상태(P1) 그리고 제2 프로그램 상태(P2) 중 하나를 갖도록 프로그램된 후 서스펜드되었다고 가정하자. 그러면, 제3 내지 제7 프로그램 상태(P3~P7)가 목표 프로그램 상태인 메모리 셀들의 문턱 전압 분포가 Px로 나타날 것이다.
t2 시점에서부터 불휘발성 메모리 장치(120)는 읽기 커맨드(RD CMD)에 응답하여 읽기 동작을 수행할 것이다. 읽기 동작이 진행되는 동안, 메모리 콘트롤러(110)는 읽기 인에이블 신호를 토글링하여 불휘발성 메모리 장치의 독출 데이터를 수신할 수 있다. 독출 데이터의 출력이 완료되면, 메모리 콘트롤러(110)는 t3 시점에서 불휘발성 메모리 장치(120)로 리줌 커맨드(RS CMD)을 발행할 수 있다.
불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 레디/비지 신호(RnBx) 신호를 로우 레벨로 변경하여 외부로 비지 상태(Busy state)임을 알리고, 중단된 프로그램 동작을 재개하는 리줌 동작을 수행할 수 있다. 리줌 동작은 프로그램 동작의 나머지 일부(PGM_b)를 수행하고, t4 시점에서 프로그램 동작이 완료될 것이다.
불휘발성 메모리 장치(120)의 프로그램 동작은 서스펜드 동작 이전에 수행된 제1 부분(PGM_a)과 리줌 동작 이후에 수행된 제2 부분(PGM_b)으로 구성될 수 있다. 앞서 설명된 바와 같이, 프로그램 동작의 제1 부분(PGM_a)이 수행되고 서스펜드되었을 때의 메모리 셀들의 문턱 전압 산포는 도 7과 같이 나타날 것이다. 이 후, 중단된 프로그램 동작의 리줌 동작에 따른 메모리 셀들의 문턱 전압 산포는 도 8과 같이 나타날 것이다.
도 8에서, 메모리 셀들은 소거 상태(E) 및 제1 내지 제7 프로그램 상태들(P1` ~ P7`) 중 하나를 갖도록 프로그램될 것이다. 제1 내지 제7 프로그램 상태들(P1` ~ P7`)은 제1 내지 제7 목표 프로그램 상태들(P1~P7)과 비교하여 변경된 산포를 가질 수 있다. 이렇게 문턱 전압 산포가 변경되는 데에는 여러 가지 이유가 있다.
예를 들어, 서스펜드 동작 이전에 프로그램 동작의 제1 부분(PGM_a)에 따라 프로그램된 메모리 셀들이 제1 및 제2 프로그램 상태들(P1`, P2`)과 같은 문턱 전압 산포를 가질 수 있다. 제1 및 제2 프로그램 상태들(P1`, P2`)은 제1 및 제2 목표 프로그램 상태들(P1, P2)과 비교하여 산포가 좌측으로 시프트되는 것을 볼 수 있다. 이는 프로그램 시간이 길어짐에 따른 전하 로스(charge loss) 때문이다.
제3 내지 제5 프로그램 상태들(P3`, P4`, P5`)은 제1 및 제2 목표 프로그램 상태들(P1, P2)과 비교하여 산포 범위가 좌우로 넓어지는 것을 볼 수 있다. 이는 메모리 셀이 인접한 메모리 셀에 커플링 영향을 받을 수 있기 때문이다. 예시적으로, n번째 워드라인(WLn)의 메모리 셀들의 문턱 전압들은 인접한 (n+1) 번째 워드라인의 메모리 셀들에 상위 페이지가 프로그램될 때 이동될 수 있다. 문턱 전압 산포가 넓어지는 이유는 (n+1) 번째 워드라인의 메모리 셀들에 상위 페이지가 프로그램될 때 n번째 워드라인(WLn)의 메모리 셀들이 워드라인 커플링을 모두 받는 것이 아니라 선택적으로 받기 때문이다.
제6 및 제7 프로그램 상태들(P6`, P7`)은 제6 및 제7 목표 프로그램 상태들(P1, P2)과 비교하여 산포가 우측으로 시프트되는 것을 볼 수 있다. 이는 재프로그램 방식으로 프로그램될 때 영향을 받을 수 있기 때문이다. 불휘발성 메모리 장치(120)는 프로그램 동작 시 메모리 셀 어레이(122)의 버퍼 영역에 버퍼 프로그램된 데이터를 다시 메인 영역으로 메인 프로그램할 수 있다. 예시적으로, 복수의 페이지를 프로그램하기 위하여 메인 프로그램은 3개의 스텝들로 구성되는 재프로그램 방식으로 구현될 수 있다. 3개 스텝의 재프로그램 동작들 각각에 의해서 형성되는 메모리 셀들의 목표 산포의 수는 동일하다. 예를 들면, 메모리 셀들이 3-비트 멀티 비트 메모리 셀(TLC)인 경우, 메모리 셀들은 재프로그램 스텝들 각각에서 8개의 문턱 전압 산포를 갖도록 프로그램될 수 있다.
이상에서 설명된 메모리 셀들의 문턱 전압 산포(P1` ~ P7`)의 변형은, 프로그램 동작의 페일을 유발할 수 있다. 더욱이, 프로그램 동작이 중단된 후 재개될 때까지의 리줌 시간(tResume)에 따른 프로그램 시간이 길어질수록 문턱 전압 산포(P1` ~ P7`)의 변형 정도가 심해져서 프로그램 신뢰성을 떨어뜨리는 문제점이 발생될 수 있다. 만일, 메모리 콘트롤러(110)에서 불휘발성 메모리 장치(120)의 프로그램 동작이 중단된 후 재개될 때까지의 리줌 시간(tResume)을 고려하여 프로그램 동작의 리줌 동작을 제어할 수 있다면, 프로그램 신뢰성을 높일 수 있을 것이다.
도 9는 본 발명의 실시예에 따른 불휘발성 메모리 장치의 프로그램 동작을 보여주는 순서도이다.
도 1 및 도 6과 연계하여, 도 9를 참조하면, S910 단계에서, 불휘발성 메모리 장치(120)는 선택된 워드라인으로 프로그램 펄스(Vpgm)와 검증 전압들(Vvfy)을 인가하는 제1 프로그램 동작(PGM1_a)을 수행할 것이다. 불휘발성 메모리 장치(120)의 프로그램 동작은 페이지 단위로 수행될 수 있다. 불휘발성 메모리 장치(120)는 선택된 페이지에 프로그램 펄스(Vpgm)와 검증 전압(Vvfy)을 인가하여 선택된 페이지에 연결된 메모리 셀들을 프로그램할 수 있다.
S920 단계에서, 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)의 프로그램 동작 중에 호스트로부터의 검색 요청을 수신하고, 불휘발성 메모리 장치(120)로 서스펜드 커맨드(SSPD CMD)를 발행할 수 있다. 만약 검색 요청이 없는 경우, 절차는 S925 단계로 이동한다.
S925 단계에서, 불휘발성 메모리 장치(120)는 모든 프로그램 루프들이 수행되어 프로그램 동작이 패스되었는지 여부를 판별할 수 있다. 프로그램 패스될 경우, 불휘발성 메모리 장치(120)는 제1 프로그램 동작(PGM1_a)을 종료한다. 프로그램 패스되지 않은 경우, 불휘발성 메모리 장치(120)는 S910 단계로 돌아가서, 선택된 페이지에 프로그램 펄스(Vpgm)와 검증 전압(Vvfy)을 인가하고 선택된 페이지에 연결된 메모리 셀들의 프로그램 완료 여부를 검증하는 프로그램 동작을 반복적으로 수행할 수 있다. S910 단계가 반복 수행됨에 따라 프로그램 펄스(Vpgm)는 단계적으로 증가할 것이다.
메모리 콘트롤러(110)에서 불휘발성 메모리 장치(120)로 서스펜드 커맨드(SSPD CMD)가 발행되면(S920), S930 단계에서 불휘발성 메모리 장치(120)는 제1 프로그램 동작(PGM1_a)을 일시 중단하는 서스펜드 동작을 수행하고, 레디/비지 신호(RnBx) 신호를 하이 레벨로 출력하여 외부로 레디 상태(Ready state)임을 알릴 수 있다. 이 때, 메모리 콘트롤러(110)는 데이터 검색을 위해 불휘발성 메모리 장치(120)로 독출될 메모리 셀의 어드레스(ADDR)와 함께 읽기 커맨드(RD CMD)를 발행할 수 있다. 불휘발성 메모리 장치(120)는 읽기 커맨드(RD CMD)에 응답하여 읽기 동작을 수행할 수 있다.
이 후, 불휘발성 메모리 장치(120)의 읽기 동작이 종료되면, S940 단계에서 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)의 제1 프로그램 동작(PGM1_a)이 중단된 후 재개될 때까지의 리줌 시간(tResume)을 검출할 수 있다. 그리고, 리줌 시간(tResume)이 기준 시간(tR1)을 경과(elapse)했는지 판단할 수 있다. 기준 시간(tR1)은 중단된 제1 프로그램 동작(PGM_a)의 문턱 전압 산포가 서스펜드 동안(즉, 읽기 동작 동안) 변형되더라도 프로그램 신뢰성을 보장할 수 있는 시간으로 설정될 수 있다. 리줌 시간(tResume)이 기준 시간(tR1)을 초과하지 않으면, 절차는 S950 단계로 이동한다. 반면, 리줌 시간(tResume)이 기준 시간(tR1)과 같거나 초과하면, 절차는 S970 단계로 이동한다.
S950 단계에서, 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)로 리줌 커맨드(RS CMD)를 발행할 수 있다.
S960 단계에서, 불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 레디/비지 신호(RnBx) 신호를 로우 레벨로 출력하여 외부로 비지 상태(Busy state)임을 알리고, 중단된 제1 프로그램 동작(PGM1_a)을 재개할 수 있다. 불휘발성 메모리 장치(120)는 중단된 프로그램 동작에 이어서, 선택된 페이지에 프로그램 펄스(Vpgm)와 검증 전압(Vvfy)을 인가하여 선택된 페이지에 연결된 메모리 셀들의 프로그램 완료 여부를 검증할 수 있다. 즉, 불휘발성 메모리 장치(120)는 제1 프로그램 동작의 나머지 일부(PGM_b)를 수행하고 프로그램 동작을 완료할 것이다.
여기에서, 제1 프로그램 동작(PGM1_a)에 속하는 마지막 프로그램 루프는 해당 프로그램 루프의 프로그램 단계로 구성되고, 제1 프로그램 동작의 나머지 일부(PGM1_b)에 속하는 첫번째 프로그램 루프는 해당 프로그램 루프의 검증 단계로 구성될 수 있다. 실시예에 따라, 제1 프로그램 동작(PGM1_a)에 속하는 마지막 프로그램 루프는 해당 프로그램 루프의 검증 단계로 구성되고, 제1 프로그램 동작의 나머지 일부(PGM1_b)에 속하는 첫번째 프로그램 루프는 다음 프로그램 루프의 프로그램 단계로 구성될 수 있다. 실시예에 따라, 제1 프로그램 동작(PGM1_a)에 속하는 마지막 프로그램 루프는 해당 프로그램 루프의 검증 단계로 구성되고, 제1 프로그램 동작의 나머지 일부(PGM1_b)에 속하는 첫번째 프로그램 루프는 해당 프로그램 루프의 검증 단계로 구성될 수 있다.
S970 단계에서, 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR1)과 같거나 초과하였으므로, 불휘발성 메모리 장치(120)의 중단된 제1 프로그램 동작(PGM1_a)의 문턱 전압 산포에 대하여 프로그램 신뢰성을 인정할 수 없다. 이에 따라, 메모리 콘트롤러(110)는 선택된 페이지의 중단된 제1 프로그램 동작(PGM1_a)을 무시하고, 다른 페이지에 대한 제2 프로그램 동작(PGM2)을 수행할 수 있다.
예시적으로, 메모리 콘트롤러(110)는 새로운 어드레스(ADDR)를 포함하는 프로그램 커맨드를 불휘발성 메모리 장치(120)로 전달할 수 있다. 불휘발성 메모리 장치(120)는 수신된 새로운 어드레스(ADDR)를 기반으로 다른 페이지를 선택하고, 다른 페이지에 프로그램 펄스(Vpgm)와 검증 전압(Vvfy)을 인가하는 제2 프로그램 동작(PGM2)을 수행할 것이다.
도 10 및 도 11은 도 9의 프로그램 방법을 설명하기 위한 도면들이다.
도 9 및 도 10을 참조하면, 메모리 콘트롤러(110)는 호스트(105)의 기입 요청에 따라 불휘발성 메모리 장치(120)로 프로그램 커맨드를 발행하고, 불휘발성 메모리 장치(120)는 프로그램 커맨드에 응답하여 하나의 페이지에 대한 제1 프로그램 동작(PGM1_a)을 수행할 수 있다(S910). 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)의 제1 프로그램 동작(PGM1_a) 중에 호스트로부터의 검색 요청을 수신하고, 불휘발성 메모리 장치(120)로 서스펜드 커맨드를 발행할 수 있다(S920).
불휘발성 메모리 장치(120)는 서스펜드 커맨드에 응답하여 제1 프로그램 동작(PGM1_a)을 일시 중단하는 서스펜드 동작을 수행하고, 메모리 콘트롤러(110)로 레디/비지 신호(RnBx) 신호를 레디 상태(Ready state)로 출력할 수 있다. 메모리 콘트롤러(110)는 데이터 검색을 위해 불휘발성 메모리 장치(120)로 읽기 커맨드를 발행할 수 있다. 불휘발성 메모리 장치(120)는 읽기 커맨드에 응답하여 읽기 동작을 수행하고, 읽기 동작이 종료되면 메모리 콘트롤러(110)로 레디/비지 신호(RnBx) 신호를 비지 상태(Busy state)로 출력할 수 있다(S930).
메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)의 제1 프로그램 동작(PGM1_a)이 중단된 후 재개될 때까지의 리줌 시간(tResume)이 기준 시간(tR1)을 경과(elapse)했는지 여부를 판단할 수 있다(S940). 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR1)을 초과하지 않으면, 불휘발성 메모리 장치(120)로 리줌 커맨드(RS CMD)을 발행할 수 있다(S950). 불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 중단된 제1 프로그램 동작(PGM1_a)에 이어서, 동일한 선택된 페이지에 대한 제1 프로그램 동작의 나머지 일부(PGM1_b)를 수행할 수 있다(S960).
도 9 및 도 11을 참조하면, 도 10과 비교하여, 리줌 시간(tResume)의 판단 동작(S940)에 따른 후속 동작(S970)에서 차이가 있고, 나머지 동작들은 동일하다. 이하, 도 10과의 차이점을 중심으로 설명된다.
도 11에서, 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR1)과 같거나 초과하는 경우(S940), 중단된 제1 프로그램 동작(PGM1_a)을 무시하고, 불휘발성 메모리 장치(120)의 다른 페이지에 대한 제2 프로그램 동작(PGM2)을 수행할 수 있다(S970).
상술한 도 9 내지 도 11의 실시예에서는 메모리 콘트롤러(110)가 리줌 시간(tResume)이 프로그램 신뢰성의 기준 시간(tR1)을 경과하였는지 여부에 따라 불휘발성 메모리 장치를 제어할 수 있음이 설명되었다. 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR1)을 초과하지 않으면, 중단된 제1 프로그램 동작이 재개되도록 제어할 수 있다. 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR1)과 같거나 초과하면, 중단된 제1 프로그램 동작을 무시하고 새로운 제2 프로그램 동작이 수행되도록 제어할 수 있다.
도 12 및 도 13은 본 발명의 다른 실시예에 따른 불휘발성 메모리 장치의 프로그램 방법을 설명하는 도면들이다.
도 12 및 도 13을 참조하면, 프로그램 방법은, 도 9의 프로그램 방법과 비교하여, 리줌 시간(tResume)이 기준 시간(tR1)과 같거나 초과하였을 때(S940) 후속 동작들에서 차이가 있고, 나머지 동작들은 동일하다. 이하, 도 9와의 차이점을 중심으로 설명된다.
메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR1)과 같거나 초과하였다고 판단되면(S940), S1210 단계에서 불휘발성 메모리 장치(120)로 리줌 커맨드를 발행할 수 있다. S1220 단계에서, 불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 중단된 제1 프로그램 동작(PGM1_a)에 이어서 선택된 페이지에 프로그램 펄스(Vpgm)와 검증 전압(Vvfy)을 인가하여 선택된 페이지의 제1 프로그램 동작의 나머지 일부(PGM1_b)를 수행할 수 있다.
S1230 단계에서, 메모리 콘트롤러(110)는 선택된 페이지에 대한 제1 프로그램 동작(PGM1)을 완료하고, 다른 페이지에 대한 제2 프로그램 동작(PGM2)을 수행할 수 있다. 예시적으로, 메모리 콘트롤러(110)는 새로운 어드레스(ADDR)를 포함하는 프로그램 커맨드를 불휘발성 메모리 장치(120)로 전달할 수 있다. 불휘발성 메모리 장치(120)는 수신된 새로운 어드레스(ADDR)를 기반으로 다른 페이지를 선택하고, 다른 페이지에 프로그램 펄스(Vpgm)와 검증 전압(Vvfy)을 인가하는 제2 프로그램 동작(PGM2)을 수행할 수 있다.
상술한 도 12 및 도 13의 실시예에서, 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR1)과 같거나 초과하면, 중단된 제1 프로그램 동작을 재개하여 완료한 후 새로운 제2 프로그램 동작이 수행되도록 제어할 수 있다.
도 14 및 도 15는 본 발명의 또 다른 실시예에 따른 불휘발성 메모리 장치의 프로그램 방법을 설명하는 도면들이다.
도 14 및 도 15를 참조하면, 프로그램 방법은, 도 9의 프로그램 방법과 비교하여, 리줌 시간(tResume)이 기준 시간(tR1)과 같거나 초과하였을 때(S940) 후속 동작들에서 차이가 있고, 나머지 동작들은 동일하다. 이하, 도 9와의 차이점을 중심으로 설명된다.
메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR1)과 같거나 초과하였다고 판단되면(S940), S1410 단계에서 불휘발성 메모리 장치(120)로 리줌 커맨드를 발행할 수 있다. S1420 단계에서, 불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 레디/비지 신호(RnBx) 신호를 로우 레벨로 출력하여 외부로 비지 상태(Busy state)임을 알리고, 제1 프로그램 동작의 나머지 일부(PGM1_b)을 재개할 수 있다. 즉, 불휘발성 메모리 장치(120)는 중단된 제1 프로그램 동작(PGM1_a)에 이어서 선택된 페이지에 프로그램 펄스(Vpgm)와 검증 전압(Vvfy)을 인가하여 선택된 페이지에 연결된 메모리 셀들의 프로그램 완료 여부를 검증하는 제1 프로그램 동작의 나머지 일부(PGM1_b)를 수행할 수 있다.
S1430 단계에서, 메모리 콘트롤러(110)는 제1 프로그램 동작(PGM1)에서 중단되었다가 재개된 선택된 페이지에 대하여 독출 동작을 수행할 수 있다. 예를 들어, 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)로 선택된 페이지의 어드레스(ADDR)와 함께 읽기 커맨드(RD CMD)를 발행하고, ECC 엔진(112, 도 1)을 이용하여 불휘발성 메모리 장치(120)로부터 읽은 데이터(DATA)에 대하여 에러를 검출 및 정정할 수 있다.
S1440 단계에서, 메모리 콘트롤러(110)는 선택된 페이지의 프로그램 동작(PGM1)에 대한 ECC를 완료하고(S1430), 다른 페이지에 대한 제2 프로그램 동작(PGM2)을 수행할 수 있다. 예시적으로, 메모리 콘트롤러(110)는 새로운 어드레스(ADDR)를 포함하는 프로그램 커맨드를 불휘발성 메모리 장치(120)로 전달할 수 있다. 불휘발성 메모리 장치(120)는 수신된 새로운 어드레스(ADDR)를 기반으로 다른 페이지를 선택하고, 다른 페이지에 프로그램 펄스(Vpgm)와 검증 전압(Vvfy)을 인가하는 제2 프로그램 동작(PGM2)을 수행할 수 있다.
상술한 도 14 및 도 15의 실시예에서, 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR1)과 같거나 초과하면, 중단된 제1 프로그램 동작을 재개하여 완료하고, 중단된 제1 프로그램 동작에 대한 ECC를 수행한 후, 새로운 제2 프로그램 동작이 수행되도록 제어할 수 있다.
도 16은 본 발명의 또 다른 실시예에 따른 불휘발성 메모리 장치의 프로그램 동작을 보여주는 순서도이다.
도 1 및 도 6과 연계하여, 도 16을 참조하면, 프로그램 방법은 도 9의 프로그램 방법과 비교하여, S1640 단계에서 차이가 있고, 나머지 동작들은 동일하다. 이하, 도 9과의 차이점을 중심으로 설명된다.
도 9에서 설명된 S910 내지 S930 단계들을 수행한 후에, S1640 단계에서 메모리 콘트롤러(110)는 프로그램 신뢰성의 기준 시간(tR1) 안에 불휘발성 메모리 장치(120)의 중단된 프로그램 동작을 재개시킬 수 있다. 이에 따라, 불휘발성 메모리 장치(120)는 중단된 프로그램 동작에 이어서, 선택된 페이지에 프로그램 펄스(Vpgm)와 검증 전압(Vvfy)을 인가하여 선택된 페이지에 연결된 메모리 셀들의 프로그램 동작의 나머지 일부(PGM_b)를 수행하고, 프로그램 동작을 완료할 수 있다.
상술한 도 16의 실시예에서, 메모리 콘트롤러(110)는 기준 시간(tR1) 이내에 중단된 프로그램 동작을 재개시켜 프로그램 동작을 완료할 수 있다.
도 17 내지 도 19는 도 1의 불휘발성 메모리 장치의 소거 동작을 설명하는 도면들이다. 도 17 및 도 19는 도 2의 회로도에서 설명된 스트링 선택 라인(SSL), 복수의 워드라인들(WL) 및 접지 선택 라인(GSL)과 함께 기판(SUB)에 인가되는 전압들의 레벨을 보여주는 타이밍도들이다. 도 18은 복수의 메모리 셀들의 문턱 전압 산포를 보여주는 산포도이다. 도 17 및 도 19의 X축은 시간을 가리키고, Y축은 전압 레벨을 가리킨다. 도 18의 X축은 문턱 전압을 가리키고, Y축은 메모리 셀들의 개수를 가리킨다.
도 17 및 도 18을 참조하면, 제1 메모리 블록(BLK1)의 메모리 셀들은 소거 상태(E) 및 제1 내지 제7 프로그램 상태들(P1~P7) 중 어느 하나의 상태를 가질 수 있으며, 제1 메모리 블록(BLK1)의 메모리 셀들은 도 18에 도시된 바와 같은 문턱 전압 산포를 형성할 수 있다.
불휘발성 메모리 장치(120)는 제1 메모리 블록(BLK1)의 메모리 셀들이 소거 상태(E)를 갖도록 복수의 소거 루프들(EL1~ELm)을 수행할 수 있다. 예시적으로, 불휘발성 메모리 장치(120)는 증가형 스텝 펄스 소거(ISPE: Incremental Step Pulse Erase) 방식을 기반으로 제1 메모리 블록(BLK1)을 소거할 수 있다.
예를 들어, 불휘발성 메모리 장치(120)는 복수의 소거 루프들(EL1~ELm)을 수행하여 제1 메모리 블록(BLK1)을 소거할 수 있다. 복수의 소거 루프들(EL1~ELm) 각각은 소거 전압(Vers1~Versm)을 기판(SUB)으로 인가하는 소거 단계와 소거 검증 전압(Vve)을 이용하여 제1 메모리 블록(BLK1)의 소거 상태를 검증하는 소거 검증 단계를 포함할 수 있다. 여기에서, 기판(SUB)은 제1 메모리 블록(BLK1)의 포켓 P_웰에 해당하므로, 이하에서는 제1 메모리 블록(BLK1)의 포켓 P_웰(SUB)이라 칭한다.
예를 들어, 제1 소거 루프(EL1)의 소거 단계에서, 제1 메모리 블록(BLK1)의 포켓 P_웰(SUB)으로 제1 소거 펄스(Vers1)를 인가하고, 접지 선택 라인(GSL) 및 스트링 선택 라인(SSL)을 플로팅(floating)시키고, 워드라인(WL)에 접지 전압(Vss)을 인가한다. 이 때, 접지 선택 라인(GSL) 및 스트링 선택 라인(SSL)의 전압 레벨은 제1 메모리 블록(BLK1)의 포켓 P_웰(SUB)에 공급된 제1 소거 펄스(Vers1) 사이의 커플링 영향에 의해 각각 Vers1′ 및 Vers1″의 레벨로 상승할 수 있다. 이 후, 제1 메모리 블록(BLK1)의 포켓 P_웰(SUB)에 공급된 제1 소거 펄스(Vers1)는 접지 전압(Vss)으로 하강한다. 제1 소거 루프(EL1)의 소거 단계에서, 제1 소거 펄스(Vers1)에 의해 제1 메모리 블록(BLK1)의 메모리 셀들의 문턱 전압이 낮아질 수 있다.
이 후, 제1 소거 루프(EL1)의 소거 검증 단계에서, 복수의 워드라인들(WL)에 소거 검증 전압(Vve)이 인가되고, 접지 선택 라인(GSL) 및 스트링 선택 라인(SSL)에 패스 전압(Vpass)이 인가된다. 예시적으로, 소거 검증 전압(Vve)은 양(+) 전압, 접지 전압(Vss) 또는 음(-) 전압일 수 있다. 소거 검증 전압(Vve)은 소거 상태의 문턱 전압 산포의 상한 값일 수 있다. 패스 전압(Vpass)은 접지 선택 트랜지스터(GST) 및 스트링 선택 트랜지스터(SST)를 턴온시킬 수 있는 고전압일 수 있다.
제1 소거 루프(EL1)의 소거 검증 단계에서, 소거 검증 전압(Vve)보다 높은 문턱 전압을 갖는 메모리 셀들은 턴오프될 것이다. 소거 검증 전압(Vve)에 의해 턴-오프되는 메모리 셀들이 검출되는 경우, 제1 메모리 블록(BLK1)이 소거 완료되지 않은 것(즉, 소거 페일(erase fail))으로 판별된다. 소거 검증 전압(Vve)에 의해 모든 메모리 셀들이 턴-온되는 경우, 제1 메모리 블록(BLK1)이 소거 완료된 것(즉, 소거 패스(erase pass))으로 판별된다.
소거 페일된 경우, 불휘발성 메모리 장치(120)는 제2 소거 루프(EL2)를 수행한다. 제2 소거 루프(EL2)의 소거 단계에서, 제1 메모리 블록(BLK1)의 포켓 P_웰(SUB)으로 제2 소거 펄스(Vers2)를 인가하고, 접지 선택 라인(GSL) 및 스트링 선택 라인(SSL)을 플로팅(floating)시키고, 워드라인(WL)에 접지 전압(Vss)을 인가한다. 예시적으로, 제2 소거 펄스(Vers2)는 제1 소거 전압(Vers1)보다 소거 전압 증가량(Vers)만큼 높은 레벨의 전압일 수 있다. 접지 선택 라인(GSL) 및 스트링 선택 라인(SSL)의 전압 레벨은 제1 메모리 블록(BLK1)의 포켓 P_웰(SUB)에 공급된 제2 소거 펄스(Vers2)에 의해 각각 Vers2′ 및 Vers2″의 레벨로 상승할 수 있다. 이 후, 제1 메모리 블록(BLK1)의 포켓 P_웰(SUB)에 공급된 제1 소거 펄스(Vers1)는 접지 전압(Vss)으로 하강한다. 제2 소거 루프(EL2)의 소거 검증 단계는, 제1 소거 루프(EL1)의 소거 검증 단계와 동일하게 소거 검증 동작을 수행할 수 있다.
상술한 바와 같이 수행된 복수의 소거 루프들(EL)에 의해 제1 메모리 블록(BLK1)이 소거 패스되면, 제1 메모리 블록(BLK1)의 메모리 셀들은 목표 소거 상태(E)를 가질 것이다.
그러나, 메모리 셀들 및 메모리 블록의 물리적인 특성, 메모리 셀들 및 메모리 블록의 위치 등으로 인하여, 소거된 제1 메모리 블록(BLK)의 메모리 셀들은 소거 상태(E′)와 같은 문턱 전압 산포를 가질 수 있다. 소거 상태(E′)는 목표 소거 상태(E)와 비교하여 산포 범위가 넓고 하한 값이 낮을 수 있다. 이러한 소거 상태(E′)는 "깊은 소거(deep erase)"라 불린다. 깊은 소거가 발생한 경우, 이 후의 프로그램 동작시 프로그램 동작 시간이 증가되고, 프로그램된 이후에 데이터 유지 능력(retention)이 감소될 수 있다.
제1 메모리 블록(BLK1)의 소거 산포(erase distribution)를 모으기 위하여, 도 19에 도시된 바와 같은 프리-프로그램(pre-program) 소거 방법이 사용될 수 있다.
도 19에서, 불휘발성 메모리 장치(120)는 복수의 소거 루프들(EL1~ELm)을 수행하기에 앞서서 프리-프로그램 동작(Pre_PGM)을 수행할 수 있다. 프리-프로그램 동작(Pre_PGM)은 워드라인들(WL)에 프로그램 전압(Vpgm)이 인가되고, 접지 선택 라인(GSL) 및 스트링 선택 라인(SSL)에 패스 전압(Vpass)이 인가된다. 프리-프로그램 동작(Pre_PGM)에 의해 제1 메모리 블록(BLK1)의 메모리 셀들의 문턱 전압이 소정의 레벨만큼 상승할 수 있다.
프리-프로그램 동작(Pre_PGM) 후 수행되는 복수의 소거 루프들(EL1~ELm)은 도 17을 참조하여 설명된 소거 방법과 동일하다. 프리-프로그램 동작(Pre_PGM)을 포함하는 프리-프로그램 소거 방법을 수행함에 따라, 제1 메모리 블록(BLK1)의 메모리 셀들은 도 18에 도시된 소거 상태(E)의 문턱 전압 산포를 가질 것이다. 즉, 프리-프로그램 소거 방법에 따라 메모리 블록을 소거할 경우, 소거 산포가 개선될 수 있다.
도 20은 본 발명의 실시예에 따른 소거 동작을 보여주는 타이밍도이다.
도 20을 참조하면, 메모리 콘트롤러(110)는 호스트로부터의 소거 요청이 발생하면, 불휘발성 메모리 장치(120)로 소거 커맨드(ERS CMD)를 발행한다. 소거 커맨드(ERS CMD)는 삭제되는 메모리 블록의 어드레스(ADDR)와 함께 제공될 것이다.
T0 시점에서, 불휘발성 메모리 장치(120)는 레디/비지 신호(RnBx) 신호를 로우 레벨로 출력하여 외부로 비지 상태(Busy state)임을 알릴 수 있다. 레디/비지 신호(RnBx) 신호가 로우 레벨을 유지하는 시간은 불휘발성 메모리 장치(120)가 삭제 동작의 일부(ERS_a)를 수행하고 있음을 의미한다. 레디/비지 신호(RnBx) 신호를 비지 상태로 출력함과 동시에, 불휘발성 메모리 장치(120)는 삭제되는 메모리 블록의 포켓 P_웰에 소거 펄스(Vers)를 인가하고 복수의 워드라인들(WL)에 검증 전압(Vve)을 인가하는 소거 루프들(EL)을 수행할 수 있다.
불휘발성 메모리 장치(120)의 소거 동작 중에 호스트로부터의 검색 요청이 발생할 수 있다. 메모리 콘트롤러(110)는 T1 시점에서 불휘발성 메모리 장치(120)로 서스펜드 커맨드(SSPD CMD)를 발행할 수 있다.
T2 시점에서, 불휘발성 메모리 장치(120)는 소거 동작을 일시 중단하는 서스펜드 동작을 수행할 수 있다. 이와 더불어, 불휘발성 메모리 장치(120)는 레디/비지 신호(RnBx) 신호를 하이 레벨로 변경하여 외부로 레디 상태(Ready state)임을 알릴 수 있다. 이 때, 메모리 콘트롤러(110)는 데이터 검색을 위하여 불휘발성 메모리 장치(120)로 읽기 커맨드(RD CMD)을 발행할 수 있다. 읽기 커맨드(RD CMD)는 독출될 메모리 셀의 어드레스(ADDR)와 함께 제공될 것이다.
T2 시점에서부터 불휘발성 메모리 장치(120)는 읽기 커맨드(RD CMD)에 응답하여 읽기 동작을 수행할 것이다. 읽기 동작이 진행되는 동안, 메모리 콘트롤러(110)는 읽기 인에이블 신호를 토글링하여 불휘발성 메모리 장치의 독출 데이터를 수신할 수 있다. 독출 데이터의 출력이 완료되면, 메모리 콘트롤러(110)는 T3 시점에서 불휘발성 메모리 장치(120)로 리줌 커맨드(RS CMD)을 발행할 수 있다.
불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 레디/비지 신호(RnBx) 신호를 로우 레벨로 변경하여 외부로 비지 상태(Busy state)임을 알리고, 중단된 소거 동작을 재개하는 리줌 동작을 수행할 수 있다. 리줌 동작은 소거 동작의 나머지 일부(ERS_b)를 수행하고, T4 시점에서 소거 동작이 완료될 것이다.
도 21은 본 발명의 실시예에 따른 불휘발성 메모리 장치의 소거 동작을 보여주는 순서도이다.
도 1 및 도 20과 연계하여, 도 21을 참조하면, S2110 단계에서, 불휘발성 메모리 장치(120)는 기판으로 소거 펄스(Vers)와 검증 전압들(Vve)을 인가하는 소거 동작을 수행할 것이다. 불휘발성 메모리 장치(120)의 소거 동작은 블록 단위로 수행될 수 있다. 불휘발성 메모리 장치(120)는 제1 메모리 블록(BLK1)으로 소거 펄스(Vers)와 소거 검증 전압(Vve)을 인가하여 제1 메모리 블록(BLK1)의 메모리 셀들의 소거 완료 여부를 검증할 수 있다.
S2120 단계에서, 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)의 소거 동작 중에 호스트로부터의 검색 요청을 수신하고, 불휘발성 메모리 장치(120)로 서스펜드 커맨드를 발행할 수 있다. 만약 검색 요청이 없는 경우, 절차는 S2125 단계로 이동한다.
S2125 단계에서, 불휘발성 메모리 장치(120)는 제1 메모리 블록(BLK1)의 소거 동작이 패스되었는지 여부를 판별할 수 있다. 소거 패스될 경우, 불휘발성 메모리 장치(120)는 소거 동작을 종료한다. 소거 패스되지 않은 경우, 불휘발성 메모리 장치(120)는 S2110 단계로 돌아가서, 제1 메모리 블록(BLK1)에 소거 펄스(Vers)와 검증 전압(Vve)을 인가하고 제1 메모리 블록(BLK1)의 메모리 셀들의 소거 완료 여부를 검증하는 소거 동작을 반복적으로 수행할 수 있다. S2110 단계가 반복 수행됨에 따라 소거 펄스(Vers)는 단계적으로 증가할 것이다.
메모리 콘트롤러(110)에서 불휘발성 메모리 장치(120)로 서스펜드 커맨드가 발행되면(S2120), S2130 단계에서 불휘발성 메모리 장치(120)는 소거 동작(ERS_a)을 일시 중단하는 서스펜드 동작을 수행하고, 레디/비지 신호(RnBx) 신호를 하이 레벨로 출력하여 외부로 레디 상태(Ready state)임을 알릴 수 있다. 이 때, 메모리 콘트롤러(110)는 데이터 검색을 위해 불휘발성 메모리 장치(120)로 독출될 메모리 셀의 어드레스(ADDR)와 함께 읽기 커맨드(RD CMD)를 발행할 수 있다. 불휘발성 메모리 장치(120)는 읽기 커맨드(RD CMD)에 응답하여 읽기 동작을 수행할 수 있다.
이 후, 불휘발성 메모리 장치(120)의 읽기 동작이 종료되면, S2140 단계에서 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)의 소거 동작이 중단된 후 재개될 때까지의 리줌 시간(tResume)을 검출할 수 있다. 그리고, 리줌 시간(tResume)이 기준 시간(tR2)을 경과(elapse)했는지 판단할 수 있다. 기준 시간(tR2)은 중단된 소거 동작(ERS_a)의 문턱 전압 산포가 서스펜드 동안(즉, 읽기 동작 동안) 변형되더라도 소거 신뢰성을 보장할 수 있는 시간으로 설정될 수 있다. 리줌 시간(tResume)이 기준 시간(tR2)을 초과하지 않으면, 절차는 S2150 단계로 이동한다. 반면, 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하면, 절차는 S2170 단계로 이동한다.
S2150 단계에서, 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)로 리줌 커맨드(RS CMD)를 발행할 수 있다.
S2160 단계에서, 불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 레디/비지 신호(RnBx) 신호를 로우 레벨로 출력하여 외부로 비지 상태(Busy state)임을 알리고, 중단된 소거 동작을 재개할 수 있다. 불휘발성 메모리 장치(120)는 중단된 소거 동작(ERS_a)에 이어서, 제1 메모리 블록(BLK1)으로 소거 펄스(Vers)와 검증 전압(Vve)을 인가하여 선택된 페이지에 연결된 메모리 셀들의 소거 완료 여부를 검증할 수 있다. 즉, 불휘발성 메모리 장치(120)는 소거 동작의 나머지 일부(ERS_b)를 수행하고 소거 동작을 완료할 것이다.
S2170 단계에서, 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하였으므로, 불휘발성 메모리 장치(120)의 중단된 소거 동작(ERS_a)의 문턱 전압 산포에 대하여 소거 신뢰성을 인정할 수 없다. 이에 따라, 메모리 콘트롤러(110)는 제1 메모리 블록(BLK1)의 중단된 소거 동작(ERS_a)을 무시하고 제1 메모리 블록(BLK1)에 대한 소거 동작을 재수행시킬 수 있다. 이를 위하여, 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)로 리줌 커맨드(RS CMD)를 발행할 수 있다.
S2180 단계에서, 불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 제1 메모리 블록(BLK1)에 프리-프로그램 동작(Pre_PGM)을 수행할 수 있다. 프리-프로그램 동작(Pre_PGM)에 의해 제1 메모리 블록(BLK1)의 메모리 셀들의 문턱 전압이 소정의 레벨만큼 상승할 수 있다. S2190 단계에서, 불휘발성 메모리 장치(120)는 프리-프로그램 동작(Pre_PGM) 후 복수의 소거 루프들(EL1~ELm)을 수행하여 제1 메모리 블록(BLK1)의 소거 동작(ERS1)을 완료할 수 있다.
도 22 및 도 23은 도 21의 소거 방법을 설명하기 위한 도면들이다.
도 22 를 참조하면, 메모리 콘트롤러(110)는 호스트(105)의 소거 요청에 따라 불휘발성 메모리 장치(120)로 소거 커맨드를 발행하고, 불휘발성 메모리 장치(120)는 소거 커맨드에 응답하여 하나의 블록에 대한 제1 소거 동작(ERS1_a)을 수행할 수 있다(S2110).
메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)의 제1 소거 동작(ERS1_a) 중에 호스트로부터의 검색 요청을 수신하고, 불휘발성 메모리 장치(120)로 서스펜드 커맨드를 발행할 수 있다(S2120).
불휘발성 메모리 장치(120)는 서스펜드 커맨드에 응답하여 제1 소거 동작(ERS1_a)을 일시 중단하는 서스펜드 동작을 수행하고, 메모리 콘트롤러(110)로 레디/비지 신호(RnBx) 신호를 레디 상태(Ready state)로 출력할 수 있다. 메모리 콘트롤러(110)는 데이터 검색을 위해 불휘발성 메모리 장치(120)로 읽기 커맨드를 발행할 수 있다. 불휘발성 메모리 장치(120)는 읽기 커맨드에 응답하여 읽기 동작을 수행하고, 읽기 동작이 종료되면 메모리 콘트롤러(110)로 레디/비지 신호(RnBx) 신호를 비지 상태(Busy state)로 출력할 수 있다(S2130).
메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)의 제1 소거 동작(ERS1_a)이 중단된 후 재개될 때까지의 리줌 시간(tResume)이 기준 시간(tR2)을 경과(elapse)했는지 여부를 판단할 수 있다(S2140).
메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR2)을 초과하지 않으면, 불휘발성 메모리 장치(120)로 리줌 커맨드(RS CMD)을 발행할 수 있다(S2150). 불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 중단된 제1 소거 동작(PGM1_a)에 이어서, 동일한 제1 메모리 블록(BLK1)에 대한 제1 소거 동작의 나머지 일부(ERS1_b)를 수행할 수 있다(S2160).
도 23을 참조하면, 도 22과 비교하여, 리줌 시간(tResume)의 판단 동작(S2140)에 따른 후속 동작(S2170, S2180, S2190)에서 차이가 있고, 나머지 동작들은 동일하다. 이하, 도 22과의 차이점을 중심으로 설명된다.
도 23에서, 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하는 경우(S2140), 중단된 제1 소거 동작(PGM1_a)을 무시할 수 있다. 메모리 콘트롤러(110)는 제1 메모리 블록(BLK1)에 대한 소거 동작을 재수행시키기 위하여 불휘발성 메모리 장치(120)로 리줌 커맨드(RS CMD)를 발행할 수 있다(2170).
불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 제1 메모리 블록(BLK1)에 프리-프로그램 동작(Pre_PGM)을 수행할 수 있다(S2180). 불휘발성 메모리 장치(120)는 프리-프로그램 동작(Pre_PGM) 후 복수의 소거 루프들(EL1~ELm)을 수행하여 제1 메모리 블록(BLK1)의 소거 동작(ERS1)을 완료할 수 있다(S2190).
상술한 도 21 내지 도 23의 실시예에서는 메모리 콘트롤러(110)가 리줌 시간(tResume)이 소거 신뢰성의 기준 시간(tR2)을 경과하였는지 여부에 따라 불휘발성 메모리 장치를 제어할 수 있음이 설명되었다. 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR2)을 초과하지 않으면, 중단된 제1 소거 동작이 재개되도록 제어한다. 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하면, 중단된 제1 소거 동작을 무시하고 프리-프로그램 소거 방법으로 제1 소거 동작이 다시 수행되도록 제어할 수 있다.
도 24 및 도 25는 본 발명의 다른 실시예에 따른 불휘발성 메모리 장치의 소거 방법을 설명하는 도면들이다.
도 24 및 도 25를 참조하면, 소거 방법은, 도 21의 소거 방법과 비교하여, 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하였을 때(S2140) 후속 동작들(S2140)에서 차이가 있고, 나머지 동작들은 동일하다. 이하, 도 21과의 차이점을 중심으로 설명된다.
메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하였다고 판단되면(S2140), S2410 단계에서 불휘발성 메모리 장치(120)로 다른 메모리 블록에 대한 제2 소거 동작(ERS2)을 수행할 수 있다. 예시적으로, 메모리 콘트롤러(110)는 새로운 어드레스(ADDR)를 포함하는 소거 커맨드를 불휘발성 메모리 장치(120)로 전달할 수 있다. 불휘발성 메모리 장치(120)는 수신된 새로운 어드레스(ADDR)를 기반으로 다른 메모리 블록를 선택하고, 다른 메모리 블록에 소거 펄스(Vers)와 검증 전압(Vve)을 인가하는 제2 소거 동작(ERS2)을 수행할 것이다.
상술한 도 24 및 도 25의 실시예에서, 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하면, 중단된 제1 소거 동작을 무시하고 새로운 제2 소거 동작(ERS2)이 수행되도록 제어할 수 있다.
도 26 및 도 27은 본 발명의 또 다른 실시예에 따른 불휘발성 메모리 장치의 소거 방법을 설명하는 도면들이다.
도 26 및 도 27을 참조하면, 소거 방법은, 도 21의 소거 방법과 비교하여, 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하였을 때(S2140) 후속 동작들(S2610~S2640)에서 차이가 있고, 나머지 동작들은 동일하다. 이하, 도 21과의 차이점을 중심으로 설명된다.
S2610 단계에서, 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)로 리줌 커맨드(RS CMD)를 발행할 수 있다. S2620 단계에서, 불휘발성 메모리 장치(120)는 리줌 커맨드(RS CMD)에 응답하여 중단된 소거 동작(ERS1_a)에 이어서, 제1 메모리 블록(BLK1)으로 소거 펄스(Vers)와 검증 전압(Vve)을 인가하여 소거 동작의 나머지 일부(ERS1_b)를 수행할 수 있다.
S2630 단계에서, 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)의 중단되었다가 재개된 제1 메모리 블록(BLK1)의 소거 동작(ERS1_a, ERS1_b)을 무시하고 제1 메모리 블록(BLK1)에 대한 소거 동작을 재수행시킬 수 있다. 이에 따라, 불휘발성 메모리 장치(120)는 제1 메모리 블록(BLK1)에 프리-프로그램 동작(Pre_PGM)을 수행할 수 있다. S2640 단계에서, 불휘발성 메모리 장치(120)는 제1 메모리 블록(BLK1)에 대한 프리-프로그램 동작(Pre_PGM) 후 복수의 소거 루프들(EL1~ELm)을 수행하여 제1 메모리 블록(BLK1)의 소거 동작(ERS1)을 완료할 수 있다.
상술한 도 26 및 도 27의 실시예에서, 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하면, 중단된 제1 소거 동작을 재개한 후 프리-프로그램 소거 방법으로 제1 소거 동작(ERS1)이 다시 수행되도록 제어할 수 있다.
도 28 및 도 29는 본 발명의 또 다른 실시예에 따른 불휘발성 메모리 장치의 소거 방법을 설명하는 도면들이다.
도 28 및 도 29를 참조하면, 소거 방법은, 도 21의 소거 방법과 비교하여, 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하였을 때(S2140) 후속 동작(S2810)에서 차이가 있고, 나머지 동작들은 동일하다. 이하, 도 21과의 차이점을 중심으로 설명된다.
S2810 단계에서, 메모리 콘트롤러(110)는 불휘발성 메모리 장치(120)의 중단된 제1 소거 동작(ERS1_a)을 무시하고, 제1 메모리 블록(BLK1)에 대한 소거 동작을 재수행시킬 수 있다. 이에 따라, 불휘발성 메모리 장치(120)는 제1 메모리 블록(BLK1)에 복수의 소거 루프들(EL1~ELm)을 수행하여 제1 메모리 블록(BLK1)의 소거 동작(ERS1)을 완료할 수 있다.
상술한 도 28 및 도 29의 실시예에서, 메모리 콘트롤러(110)는 리줌 시간(tResume)이 기준 시간(tR2)과 같거나 초과하면, 중단된 제1 소거 동작을 무시하고 제1 소거 동작(ERS1)이 처음부터 다시 수행되도록 제어할 수 있다.
도 30은 본 발명의 또 다른 실시예에 따른 불휘발성 메모리 장치의 소거 동작을 보여주는 순서도이다.
도 1 및 도 20과 연계하여, 도 30을 참조하면, 소거 방법은 도 21의 소거 방법과 비교하여, S3040 단계에서 차이가 있고, 나머지 동작들은 동일하다. 이하, 도 9과의 차이점을 중심으로 설명된다.
도 21에서 설명된 S2110 내지 S2130 단계들을 수행한 후에, 이 후, S3040 단계에서 메모리 콘트롤러(110)는 소거 신뢰성의 기준 시간(tR2) 안에 불휘발성 메모리 장치(120)의 중단된 소거 동작을 재개시킬 수 있다. 이에 따라, 불휘발성 메모리 장치(120)는 중단된 소거 동작에 이어서, 선택된 메모리 블록에 소거 펄스(Vers)와 소거 검증 전압(Vve)을 인가하여 선택된 메모리 블록의 메모리 셀들의 소거 동작의 나머지 일부(ERS_b)를 수행하고, 소거 동작을 완료할 수 있다.
상술한 도 30의 실시예에서, 메모리 콘트롤러(110)는 기준 시간(tR2) 이내에 중단된 소거 동작을 재개시켜 소거 동작을 완료할 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.

Claims (20)

  1. 복수의 프로그램 루프들을 순차적으로 수행하여 선택 워드라인에 연결되는 메모리 셀들을 프로그램하는 불휘발성 메모리 장치의 동작 방법에 있어서,
    상기 복수의 프로그램 루프들 중에서 적어도 하나의 프로그램 루프를 포함하는 프로그램 동작을 수행하는 단계;
    상기 프로그램 동작이 수행된 이후에 상기 프로그램 동작을 중단하는 단계; 및
    상기 프로그램 동작이 중단된 시점으로부터 기준 시간 내에 상기 복수의 프로그램 루프들 중 나머지 프로그램 루프들을 수행하도록 상기 프로그램 동작을 재개하는 단계를 포함하는 동작 방법.
  2. 제1항에 있어서,
    상기 기준 시간은 상기 프로그램 동작이 중단된 후 중단된 프로그램 동작의 문턱 전압 산포에 대하여 프로그램 동작 신뢰성이 보장되는 시간 길이로 제공되는 동작 방법.
  3. 복수의 소거 루프들을 순차적으로 수행하여 복수의 메모리 블록들 중 선택된 메모리 블록을 소거하는 불휘발성 메모리 장치의 동작 방법에 있어서,
    상기 복수의 소거 루프들 중에서 적어도 하나의 소거 루프를 포함하는 소거 동작을 수행하는 단계;
    상기 소거 동작이 수행된 이후에 상기 소거 동작을 중단하는 단계; 및
    상기 소거 동작이 중단된 시점으로부터 기준 시간 내에 상기 복수의 소거 루프들 중 나머지 소거 루프들을 수행하도록 상기 소거 동작을 재개하는 단계를 포함하는 동작 방법.
  4. 제3항에 있어서,
    상기 기준 시간은 상기 소거 동작이 중단된 후 중단된 소거 동작의 문턱 전압 산포에 대하여 소거 동작 신뢰성이 보장되는 시간 길이로 제공되는 동작 방법.
  5. 복수의 프로그램 루프들을 순차적으로 수행하여 선택 워드라인에 연결되는 메모리 셀들을 프로그램하는 불휘발성 메모리 장치의 동작 방법에 있어서,
    상기 복수의 프로그램 루프들 중에서 적어도 하나의 프로그램 루프를 포함하는 프로그램 동작의 제1 부분을 수행하는 단계;
    상기 프로그램 동작의 제1 부분이 수행된 이후에 상기 프로그램 동작을 중단하는 단계; 및
    상기 프로그램 동작이 중단된 후 상기 프로그램 동작을 재개하는 단계를 포함하고,
    상기 프로그램 동작이 중단된 후 재개될 때까지의 리줌 시간에 따라 상기 선택 워드라인 또는 상기 선택 워드라인과는 다른 워드라인에 대하여 상기 프로그램 동작을 재개하는 동작 방법.
  6. 제5항에 있어서, 상기 프로그램 동작의 제1 부분이 수행된 이후에 상기 프로그램 동작을 중단하는 단계는,
    상기 불휘발성 메모리 장치로의 검색 요청에 의해 상기 프로그램 동작을 중단하는 단계; 및
    데이터 검색을 위해 불휘발성 메모리 장치의 읽기 동작을 수행하는 단계를 포함하는 동작 방법.
  7. 제5항에 있어서, 상기 프로그램 동작이 중단된 후 상기 프로그램 동작을 재개하는 단계는,
    상기 리줌 시간이 기준 시간을 경과했는지 판단하는 단계를 포함하고,
    상기 기준 시간은 상기 프로그램 동작의 제1 부분의 문턱 전압 산포에 대하여 프로그램 동작 신뢰성이 보장되는 시간 길이로 제공되는 동작 방법.
  8. 제7항에 있어서, 상기 프로그램 동작이 중단된 후 상기 프로그램 동작을 재개하는 단계는,
    상기 리줌 시간이 상기 기준 시간을 초과하지 않으면, 상기 프로그램 동작의 제1 부분에 이어서 상기 복수의 프로그램 루프들 중 나머지 프로그램 루프들을 포함하는 상기 프로그램 동작의 제2 부분을 수행하는 단계를 포함하는 동작 방법.
  9. 제8항에 있어서, 상기 프로그램 동작이 중단된 후 상기 프로그램 동작을 재개하는 단계는,
    상기 리줌 시간이 상기 기준 시간과 같거나 초과한 경우, 상기 프로그램 동작의 제1 부분을 무시하고, 상기 다른 워드라인에 대한 연결되는 메모리 셀들을 프로그램하는 단계를 포함하는 동작 방법.
  10. 제7항에 있어서, 상기 프로그램 동작이 중단된 후 상기 프로그램 동작을 재개하는 단계는,
    상기 리줌 시간이 상기 기준 시간과 같거나 초과한 경우, 상기 프로그램 동작의 제1 부분에 이어서 상기 복수의 프로그램 루프들 중 나머지 프로그램 루프들을 포함하는 상기 프로그램 동작의 제2 부분을 수행하는 단계; 및
    상기 선택 워드라인의 프로그램 동작을 완료한 후, 상기 다른 워드라인에 연결되는 메모리 셀들을 프로그램하는 단계를 포함하는 동작 방법.
  11. 제7항에 있어서, 상기 프로그램 동작이 중단된 후 상기 프로그램 동작을 재개하는 단계는,
    상기 리줌 시간이 상기 기준 시간과 같거나 초과한 경우, 상기 프로그램 동작의 제1 부분에 이어서 상기 복수의 프로그램 루프들 중 나머지 프로그램 루프들을 포함하는 상기 프로그램 동작의 제2 부분을 수행하는 단계; 및
    상기 선택 워드라인의 상기 메모리 셀들에 프로그램된 데이터에 대하여 에러 정정 및 검출하는 단계; 및
    상기 다른 워드라인에 연결되는 메모리 셀들을 프로그램하는 단계를 포함하는 동작 방법.
  12. 제5항에 있어서, 상기 프로그램 동작이 중단된 후 상기 프로그램 동작을 재개하는 단계는,
    상기 복수의 프로그램 루프들 중 나머지 프로그램 루프들을 포함하는 상기 프로그램 동작의 제2 부분을 수행하는 단계를 포함하고,
    상기 복수의 프로그램 루프들 각각은 소정의 프로그램 전압 증가량만큼 조절된 프로그램 펄스들을 인가하는 프로그램 단계와 검증 전압들을 인가하는 검증 단계를 포함하는 동작 방법.
  13. 제12항에 있어서,
    상기 프로그램 동작의 제1 부분에 속하는 마지막 프로그램 루프는 해당 프로그램 루프의 상기 프로그램 단계로 구성되고, 상기 프로그램 동작의 제2 부분에 속하는 첫번째 프로그램 루프는 상기 당해 프로그램 루프의 상기 검증 단계로 구성되는 동작 방법.
  14. 복수의 소거 루프들을 순차적으로 수행하여 복수의 메모리 블록들 중 선택된 메모리 블록을 소거하는 불휘발성 메모리 장치의 동작 방법에 있어서,
    상기 복수의 소거 루프들 중에서 적어도 하나의 소거 루프를 포함하는 소거 동작의 제1 부분을 수행하는 단계;
    상기 소거 동작의 제1 부분이 수행된 이후에 상기 소거 동작을 중단하는 단계; 및
    상기 소거 동작이 중단된 후 상기 소거 동작을 재개하는 단계를 포함하고,
    상기 소거 동작이 중단된 후 재개될 때까지의 리줌 시간에 따라 상기 복수의 소거 루프들 중 나머지 소거 루프들을 수행하거나 상기 복수의 소거 루프들을 처음부터 다시 수행하는 동작 방법.
  15. 제14항에 있어서, 상기 소거 동작의 제1 부분이 수행된 이후에 상기 소거 동작을 중단하는 단계는,
    상기 불휘발성 메모리 장치로의 검색 요청에 의해 상기 소거 동작을 중단하는 단계; 및
    데이터 검색을 위해 불휘발성 메모리 장치의 읽기 동작을 수행하는 단계를 포함하는 동작 방법.
  16. 제14항에 있어서, 상기 소거 동작이 중단된 후 상기 소거 동작을 재개하는 단계는,
    상기 리줌 시간이 기준 시간을 경과했는지 판단하는 단계를 포함하고,
    상기 기준 시간은 상기 소거 동작의 제1 부분의 문턱 전압 산포에 대하여 소거 동작 신뢰성이 보장되는 시간 길이로 제공되는 동작 방법.
  17. 제16항에 있어서, 상기 소거 동작이 중단된 후 상기 소거 동작을 재개하는 단계는,
    상기 리줌 시간이 상기 기준 시간을 초과하지 않으면, 상기 소거 동작의 제1 부분에 이어서 상기 복수의 소거 루프들 중 상기 나머지 소거 루프들을 포함하는 상기 프로그램 동작의 제2 부분을 수행하는 단계를 포함하는 동작 방법.
  18. 제16항에 있어서, 상기 소거 동작이 중단된 후 상기 소거 동작을 재개하는 단계는,
    상기 리줌 시간이 상기 기준 시간과 같거나 초과한 경우, 상기 선택된 메모리 블록에 대하여 프리-프로그램 동작을 수행하는 단계; 및
    상기 선택된 메모리 블락에 대하여 상기 복수의 소거 루프들을 처음부터 다시 시작하는 단계를 포함하는 동작 방법.
  19. 제16항에 있어서, 상기 소거 동작이 중단된 후 상기 소거 동작을 재개하는 단계는,
    상기 리줌 시간이 상기 기준 시간과 같거나 초과한 경우, 상기 소거 동작의 제1 부분을 무시하고, 상기 선택된 메모리 블록과는 다른 메모리 블록을 소거하는 단계를 포함하는 동작 방법.
  20. 제16항에 있어서, 상기 소거 동작이 중단된 후 상기 소거 동작을 재개하는 단계는,
    상기 소거 동작의 제1 부분에 이어서 상기 복수의 소거 루프들 중 상기 나머지 소거 루프들을 포함하는 상기 소거 동작의 제2 부분을 수행하는 단계;
    상기 선택된 메모리 블록에 대하여 프리-프로그램 동작을 수행하는 단계; 및
    상기 선택된 메모리 블락에 대하여 상기 복수의 소거 루프들을 처음부터 다시 시작하는 단계를 포함하는 동작 방법.
KR1020170021728A 2016-11-29 2017-02-17 리줌 동작을 제어하는 불휘발성 메모리 장치의 동작 방법 KR20180060885A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US15/825,786 US10431315B2 (en) 2016-11-29 2017-11-29 Operation method of a nonvolatile memory device for controlling a resume operation
CN201711223276.6A CN108122582B (zh) 2016-11-29 2017-11-29 非易失性存储器装置的操作方法和存储器控制器
US16/561,570 US10910077B2 (en) 2016-11-29 2019-09-05 Operation method of a nonvolatile memory device for controlling a resume operation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662427427P 2016-11-29 2016-11-29
US62/427,427 2016-11-29

Publications (1)

Publication Number Publication Date
KR20180060885A true KR20180060885A (ko) 2018-06-07

Family

ID=62621663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170021728A KR20180060885A (ko) 2016-11-29 2017-02-17 리줌 동작을 제어하는 불휘발성 메모리 장치의 동작 방법

Country Status (1)

Country Link
KR (1) KR20180060885A (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200046807A (ko) * 2018-10-25 2020-05-07 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
US11216208B1 (en) 2020-06-15 2022-01-04 SK Hynix Inc. Memory system, memory controller, and operation method of memory system
US11307794B2 (en) 2020-06-16 2022-04-19 SK Hynix Inc. Memory system, memory controller, and operation method of memory system
US11373708B2 (en) 2020-08-14 2022-06-28 SK Hynix Inc. Memory device and method of operating the same
US11556281B2 (en) 2019-12-19 2023-01-17 SK Hynix Inc. Semiconductor memory device and controller

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200046807A (ko) * 2018-10-25 2020-05-07 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
US11556281B2 (en) 2019-12-19 2023-01-17 SK Hynix Inc. Semiconductor memory device and controller
US11216208B1 (en) 2020-06-15 2022-01-04 SK Hynix Inc. Memory system, memory controller, and operation method of memory system
US11307794B2 (en) 2020-06-16 2022-04-19 SK Hynix Inc. Memory system, memory controller, and operation method of memory system
US11656790B2 (en) 2020-06-16 2023-05-23 SK Hynix Inc. Memory system, memory controller, and operation method of memory system
US11373708B2 (en) 2020-08-14 2022-06-28 SK Hynix Inc. Memory device and method of operating the same

Similar Documents

Publication Publication Date Title
CN108122582B (zh) 非易失性存储器装置的操作方法和存储器控制器
KR102639697B1 (ko) 비휘발성 메모리 장치 및 그 프로그램 방법
KR102658792B1 (ko) 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 동작 방법
KR102579879B1 (ko) 비휘발성 메모리 장치 및 그 독출 방법
KR102355580B1 (ko) 비휘발성 메모리 장치, 그것을 포함하는 저장 장치 및 그것의 동작 방법
US10573378B2 (en) Methods of programming memory devices
KR102233810B1 (ko) 비휘발성 메모리 장치 및 그것의 워드라인 구동 방법
EP3579236B1 (en) Non-volatile memory device and erasing method of the same
KR102175039B1 (ko) 불휘발성 메모리 장치의 데이터 기입 방법
KR101427896B1 (ko) 공통 소스 라인의 노이즈를 줄이는 플래시 메모리 장치 및그것을 포함하는 메모리 시스템
KR20230065217A (ko) 비휘발성 메모리 장치 및 그것의 소거 방법
CN109545260B (zh) 非易失性存储器装置和对非易失性存储器装置编程的方法
KR20180060885A (ko) 리줌 동작을 제어하는 불휘발성 메모리 장치의 동작 방법
KR100882206B1 (ko) 비휘발성 메모리 장치 및 그 동작 방법
KR102504295B1 (ko) 비휘발성 메모리 장치 및 이의 프로그램 방법
KR20140025164A (ko) 불휘발성 메모리 장치 및 그것의 데이터 처리 방법
US10510425B2 (en) Semiconductor storage device
JP2017162534A (ja) 半導体記憶装置
US9589640B2 (en) Data storage device including nonvolatile memory device and operating method thereof
JP2018163727A (ja) 半導体記憶装置
KR20200036653A (ko) 메모리 장치 및 이를 이용한 스토리지 시스템
JP5781109B2 (ja) 不揮発性半導体記憶装置
JP2017168165A (ja) 半導体記憶装置
KR20200104668A (ko) 수직형 메모리 장치 및 이의 동작 방법
KR20230073066A (ko) 선택 워드 라인과 인접한 워드 라인들에 개별적으로 전압들을 인가하는 메모리 장치 및 이의 동작 방법

Legal Events

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