KR20190124041A - 불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치 - Google Patents

불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치 Download PDF

Info

Publication number
KR20190124041A
KR20190124041A KR1020180048101A KR20180048101A KR20190124041A KR 20190124041 A KR20190124041 A KR 20190124041A KR 1020180048101 A KR1020180048101 A KR 1020180048101A KR 20180048101 A KR20180048101 A KR 20180048101A KR 20190124041 A KR20190124041 A KR 20190124041A
Authority
KR
South Korea
Prior art keywords
write
memory
data
memory cells
command
Prior art date
Application number
KR1020180048101A
Other languages
English (en)
Other versions
KR102603916B1 (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 KR1020180048101A priority Critical patent/KR102603916B1/ko
Priority to US16/163,968 priority patent/US10685713B2/en
Priority to CN201910327392.5A priority patent/CN110399093B/zh
Publication of KR20190124041A publication Critical patent/KR20190124041A/ko
Application granted granted Critical
Publication of KR102603916B1 publication Critical patent/KR102603916B1/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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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/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
    • 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/5671Digital 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 trapping in an insulator
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

본 발명은 스토리지 장치에 관한 것이다. 본 발명의 스토리지 장치는 메모리 블록들을 포함하고, 메모리 블록들 각각은 메모리 셀들을 포함하는 불휘발성 메모리 장치, 그리고 외부의 호스트 장치로부터 제1 쓰기 요청을 수신하고, 그리고 제1 쓰기 요청에 따라 불휘발성 메모리 장치에 제1 제거(sanitize) 명령을 전달하고 그리고 제1 쓰기 요청과 연관된 제1 쓰기 데이터 및 제1 쓰기 명령을 불휘발성 메모리 장치에 전달하도록 구성되는 제어기를 포함한다. 제1 제거 명령에 응답하여, 불휘발성 메모리 장치는 메모리 블록들 중 제1 메모리 블록의 제1 메모리 셀들에 기입된 제1 데이터를 제거하도록 구성된다. 제1 쓰기 명령에 응답하여, 불휘발성 메모리 장치는 제1 메모리 블록의 제2 메모리 셀들에 제1 쓰기 데이터를 기입하도록 더 구성된다.

Description

불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치{STORAGE DEVICE COMPRISING NONVOLATILE MEMORY DEVICE AND CONTROLLER}
본 발명은 반도체 장치에 관한 것으로, 더 상세하게는 불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치에 관한 것이다.
스토리지 장치는 플래시 메모리, 상 변화(phase change) 메모리, 강유전체(ferroelectric) 메모리, 저항성(resistive) 메모리, 자기(magnetic) 메모리 등과 같은 불휘발성 메모리 장치에 데이터를 저장한다. 스토리지 장치는 스마트폰, 스마트패드, 개인용 컴퓨터 등과 같은 다양한 사용자 장치들에서 데이터를 저장하는 데에 사용된다.
반도체 제조 기술이 발전하면서 불휘발성 메모리 장치의 물리적 집적도가 향상되고, 이에 따라 스토리지 장치의 용량이 증가하고 있다. 특히, 불휘발성 메모리 장치가 3차원 구조로 제조되면서, 불휘발성 메모리 장치의 물리적 집적도가 크게 향상되고 있다.
또한, 불휘발성 메모리 장치의 하나의 메모리 셀에 저장되는 비트들의 수가 증가하면서, 스토리지 장치의 데이터 집적도가 향상되고 있다. 물리적 집적도 및 데이터 집적도의 증가는 스토리지 장치의 용량의 증가 및 제조 비용의 감소를 유발할 수 있다.
그러나 물리적 집적도 및 데이터 집적도의 향상은 불휘발성 메모리 장치를 액세스할 때에 불휘발성 메모리 장치에 인가되는 스트레스를 증가시키고, 불휘발성 메모리 장치 또는 스토리지 장치의 수명을 단축할 수 있다. 따라서, 불휘발성 메모리 장치 또는 스토리지 장치의 수명을 늘리는 장치 또는 방법에 대한 요구가 존재한다.
본 발명의 목적은 향상된 수명을 갖는 스토리지 장치를 제공하는 데에 있다.
본 발명의 실시 예에 따른 스토리지 장치는 메모리 블록들을 포함하고, 메모리 블록들 각각은 메모리 셀들을 포함하는 불휘발성 메모리 장치, 그리고 외부의 호스트 장치로부터 제1 쓰기 요청을 수신하고, 그리고 제1 쓰기 요청에 따라 불휘발성 메모리 장치에 제1 제거(sanitize) 명령을 전달하고 그리고 제1 쓰기 요청과 연관된 제1 쓰기 데이터 및 제1 쓰기 명령을 불휘발성 메모리 장치에 전달하도록 구성되는 제어기를 포함한다. 제1 제거 명령에 응답하여, 불휘발성 메모리 장치는 메모리 블록들 중 제1 메모리 블록의 제1 메모리 셀들에 기입된 제1 데이터를 제거하도록 구성된다. 제1 쓰기 명령에 응답하여, 불휘발성 메모리 장치는 제1 메모리 블록의 제2 메모리 셀들에 제1 쓰기 데이터를 기입하도록 더 구성된다.
본 발명의 실시 예에 따른 스토리지 장치는 제1 메모리 블록들 및 제2 메모리 블록들을 포함하는 불휘발성 메모리 장치, 그리고 제1 메모리 블록들 및 제2 메모리 블록들에 기입된 데이터를 서로 다르게 관리하도록 구성되는 제어기를 포함한다. 제어기는 제1 메모리 블록들에 기입된 제1 데이터를 갱신할 때에 제1 데이터의 제거 명령 및 제1 갱신 데이터의 쓰기 명령을 불휘발성 메모리 장치에 전송하도록 구성된다. 제어기는 제2 메모리 블록들에 기입된 제2 데이터를 갱신할 때에 제2 갱신 데이터의 쓰기 명령을 불휘발성 메모리 장치에 전송하도록 더 구성된다. 제거 명령에 따라, 불휘발성 메모리 장치는 제1 메모리 블록들 중 선택된 제1 메모리 블록의 제1 메모리 셀들의 문턱 전압들을 높인다.
본 발명의 실시 예에 따른 스토리지 장치는 메모리 블록들을 포함하고, 메모리 블록들 각각은 메모리 셀들을 포함하는 불휘발성 메모리 장치, 그리고 메모리 블록들 중 제1 메모리 블록에 기입된 제1 데이터를 제2 데이터로 갱신할 때, 제1 메모리 블록에 저장된 제1 데이터의 제거 명령을 불휘발성 메모리 장치로 전송하고, 그리고 제1 메모리 블록 또는 메모리 블록들 중 제2 메모리 블록에서 쓰기 동작이 수행되도록 제2 데이터의 쓰기 명령을 불휘발성 메모리 장치로 전송하도록 구성되는 제어기를 포함한다. 제1 데이터가 제거된 후에, 제거된 제1 데이터는 무효 데이터로서 제1 메모리 블록의 용량을 점유한다.
본 발명에 따르면, 보안 메모리 블록에 기입한 데이터를 갱신할 때에, 스토리지 장치는 보안 메모리 블록에 대해 소거 동작을 수행하는 대신에 이전 데이터에 대해 제거 쓰기 동작을 수행한다. 이후에, 스토리지 장치는 갱신 데이터를 이용하여 쓰기 동작을 수행한다. 보안 메모리 블록에서 수행되는 소거 동작들의 횟수가 감소되므로, 향상된 수명을 갖는 스토리지 장치가 제공된다.
도 1은 본 발명의 실시 예에 따른 컴퓨팅 장치를 보여주는 블록도이다.
도 2는 본 발명의 실시 예에 따른 불휘발성 메모리 장치를 보여주는 블록도이다.
도 3은 본 발명의 실시 예에 따른 스토리지 장치가 이전 데이터를 갱신하는 예를 보여주는 순서도이다.
도 4는 스토리지 장치가 호스트 장치의 요청에 따라 제2 메모리 블록들에 데이터를 기입하는 보안 쓰기 동작의 예를 보여준다.
도 5는 쓰기 동작이 수행될 때, 메모리 셀들의 문턱 전압들이 변화하는 예를 보여준다.
도 6은 쓰기 동작 시에 메모리 셀들에 인가되는 전압들의 예를 보여준다.
도 7은 스토리지 장치가 호스트 장치의 요청에 따라 제2 메모리 블록들에 기입된 이전 데이터를 갱신하는 예를 보여준다.
도 8은 제거 쓰기 동작이 수행될 때, 메모리 셀들의 문턱 전압들이 변화하는 예를 보여준다.
도 9는 제거 쓰기 동작 시에 메모리 셀들에 인가되는 전압들의 예를 보여준다.
도 10은 제거 쓰기 동작 시에 메모리 셀들에 인가되는 전압들의 다른 예를 보여준다.
도 11은 제거 쓰기 동작이 수행될 때, 메모리 셀들의 문턱 전압들이 변화하는 다른 예를 보여준다.
도 12는 스토리지 장치가 호스트 장치의 요청에 따라 제2 메모리 블록들에 새로운 데이터를 기입하는 예를 보여준다.
도 13은 스토리지 장치가 호스트 장치의 요청에 따라 제1 메모리 블록들에 데이터를 기입하는 예를 보여준다.
도 14는 제1 메모리 블록들에서 소거 동작이 수행될 때, 메모리 셀들의 문턱 전압들이 변화하는 예를 보여준다.
도 15는 소거 동작 시에 메모리 셀들에 인가되는 전압들의 예를 보여준다.
도 16은 제2 메모리 블록들에서 소거 동작이 수행될 때, 메모리 셀들의 문턱 전압들이 변화하는 예를 보여준다.
도 17은 소거 동작 시에 메모리 셀들에 인가되는 전압들의 예를 보여준다.
도 18은 스토리지 장치가 호스트 장치의 요청에 따라 제1 메모리 블록들 및 제2 메모리 블록들에 데이터를 기입하는 예를 보여준다.
도 19는 스토리지 장치가 호스트 장치의 요청에 따라 제1 메모리 블록들 및 제2 메모리 블록들에 기입된 데이터를 갱신하는 예를 보여준다.
도 20은 도 1 및 도 2의 메모리 블록들 중 하나의 메모리 블록의 예를 보여주는 회로도이다.
이하에서, 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있을 정도로, 본 발명의 실시 예들이 명확하고 상세하게 기재될 것이다.
도 1은 본 발명의 실시 예에 따른 컴퓨팅 장치(10)를 보여주는 블록도이다. 도 1을 참조하면, 컴퓨팅 장치(10)는 호스트 장치(20) 및 스토리지 장치(100)를 포함한다. 호스트 장치(20)는 운영체제, 응용 등과 같은 다양한 개체들을 실행할 수 있다. 호스트 장치(20)는 운영체제, 응용 등과 같은 다양한 개체들의 요청에 따라 스토리지 장치(100)를 액세스할 수 있다.
예를 들어, 호스트 장치(20)는 스토리지 장치(100)에 쓰기 데이터를 포함하는 쓰기 요청을 전달함으로써 스토리지 장치(100)에 쓰기 데이터를 기입할 수 있다. 호스트 장치(20)는 스토리지 장치(100)에 읽기 요청을 전달함으로써 스토리지 장치(100)로부터 데이터를 읽을 수 있다. 호스트 장치(20)는 운영체제 또는 응용에 의해 삭제된 데이터의 정보를 스토리지 장치(100)에 전달할 수 있다.
스토리지 장치(100)는 호스트 장치(20)의 요청에 따라 동작할 수 있다. 스토리지 장치(100)는 호스트 장치(20)의 쓰기 요청에 따라 쓰기 동작을 수행하고, 읽기 요청에 따라 읽기 동작을 수행할 수 있다. 스토리지 장치(100)는 호스트 장치(20)로부터 전달되는 삭제 정보에 따라 또는 내부적으로 관리되는 메타 데이터에 따라 소거 동작을 수행할 수 있다.
스토리지 장치(100)는 불휘발성 메모리 장치(110) 및 제어기(120)를 포함한다. 불휘발성 메모리 장치(110)는 제어기(120)로부터의 명령에 따라 쓰기 동작, 읽기 동작 또는 소거 동작을 수행할 수 있다. 불휘발성 메모리 장치(110)는 메모리 블록들(BLK1~BLKz)을 포함한다. 메모리 블록들(BLK1~BLKz) 각각은 메모리 셀들을 포함할 수 있다.
불휘발성 메모리 장치(110)는 쓰기 동작을 통해 메모리 셀들 각각에 하나 또는 그보다 많은 비트들을 기입할 수 있다. 불휘발성 메모리 장치(110)는 읽기 동작을 통해 메모리 셀들 각각으로부터 하나 또는 그보다 많은 비트들을 읽을 수 있다. 불휘발성 메모리 장치(110)는 소거 동작을 통해 메모리 셀들 각각에 기입된 비트들을 소거할 수 있다.
예시적으로, 메모리 블록들(BLK1~BKLz) 각각의 메모리 셀들은 페이지들(PAGE1~PAGE8)로 분할될 수 있다. 페이지들(PAGE1~PAGE8) 각각은 둘 이상의 메모리 셀들을 포함할 수 있다. 예를 들어, 불휘발성 메모리 장치(110)는 페이지의 단위로 쓰기 동작 또는 읽기 동작을 수행할 수 있다. 불휘발성 메모리 장치(110)는 메모리 블록 또는 둘 이상의 페이지들을 포함하며 메모리 블록에 속한 서브 블록의 단위로 소거 동작을 수행할 수 있다.
제어기(120)는 불휘발성 메모리 장치(110)를 제어할 수 있다. 제어기(120)는 호스트 장치(20)의 요청에 따라 또는 스토리지 장치(100)를 관리하기 위한 내부적인 스케줄에 따라 불휘발성 메모리 장치(110)에 쓰기 명령, 읽기 명령 또는 소거 명령을 전송할 수 있다.
제어기(120)는 주소 사상기(121) 및 장치 관리자(122)를 포함할 수 있다. 주소 사상기(121)는 호스트 장치(20)의 논리 주소들(LBA)을 불휘발성 메모리 장치(110)의 메모리 블록들(BLK1~BLKz)의 물리 주소들(PBA)과 사상할 수 있다. 예를 들어, 메모리 블록들(BLK1~BLKz)은 제1 메모리 블록들(BLK1~BLKn)(예를 들어, 사용자 메모리 블록들) 및 제2 메모리 블록들(BLKn+1~BLKz)(예를 들어, 보안 메모리 블록들)로 구분될 수 있다.
제어기(120)는 쓰기 요청이 보안 쓰기 동작과 연관되는지 판단할 수 있다. 예를 들어, 패스워드 등과 같이, 다른 데이터보다 높은 수준의 보안이 필요한 쓰기 데이터가 보안 쓰기 동작과 연관된 것으로 판단될 수 있다. 예를 들어, 제어기(120)는 호스트 장치(20)로부터 수신된 데이터(예를 들어 제1 쓰기 데이터)로부터 보안 쓰기 동작을 위한 데이터(예를 들어, 제2 쓰기 데이터)를 생성할 수 있다.
예를 들어, 호스트 장치(20)는 쓰기 요청이 보안 쓰기 동작과 연관된 것임을 알리는 정보를 스토리지 장치(100)에 제공할 수 있다. 제어기(120)는 호스트 장치(20)로부터의 정보에 따라 쓰기 요청이 보안 쓰기 동작과 연관된 것인지 판단할 수 있다.
다른 예로서, 호스트 장치(20)는 쓰기 요청이 보안 쓰기 동작과 연관된 것임을 알리는 정보를 스토리지 장치(100)에 제공하지 않을 수 있다. 제어기(120)는 호스트 장치(20)로부터 전달된 쓰기 데이터의 패턴 또는 특징에 따라, 또는 호스트 장치(20)가 이전에 스토리지 장치(100)에 기입한 데이터들의 문맥에 따라. 쓰기 요청이 보안 쓰기 동작과 연관된 것인지 판단할 수 있다.
쓰기 요청이 보안 쓰기 동작과 연관되지 않으면, 주소 사상기(121)는 쓰기 데이터에 제1 메모리 블록들(BLK1~BLKn)의 논리 주소들(LBA)과 사상할 수 있다. 쓰기 요청이 보안 쓰기 동작과 연관되면, 주소 사상기(121)는 쓰기 데이터에 제2 메모리 블록들(BLKn+1~BLKz)의 물리 주소들(PBA)과 사상할 수 있다.
장치 관리자(122)는 주소 사상기(121)에 의해 사상된 물리 주소들(PBA)에 기반하여 불휘발성 메모리 장치(110)에 명령을 전송할 수 있다. 예를 들어, 쓰기 요청이 보안 쓰기 동작과 연관되지 않으면, 장치 관리자(122)는 제1 메모리 블록들(BLK1~BLKn) 중 적어도 하나의 메모리 블록의 물리 주소들(PBA)과 함께 쓰기 명령을 불휘발성 메모리 장치(110)로 전송할 수 있다.
쓰기 요청이 보안 쓰기 동작과 연관되면, 장치 관리자(122)는 제2 메모리 블록들(BLKn+1~BLKz) 중 적어도 하나의 메모리 블록의 물리 주소들(PBA)과 함께 쓰기 명령을 불휘발성 메모리 장치(110)로 전송할 수 있다.
장치 관리자(122)는 제1 메모리 블록들(BLK1~BLKn) 및 제2 메모리 블록들(BLKn+1~BLKz)을 서로 다르게 관리할 수 있다. 예를 들어, 장치 관리자(122)는 제1 메모리 블록들(BLK1~BLKn)에 기입된 데이터를 갱신할 때의 절차들을 제2 메모리 블록들(BLKn+1~BLKz)에 기입된 데이터를 갱신할 때의 절차들과 다르게 제어할 수 있다.
도 2는 본 발명의 실시 예에 따른 불휘발성 메모리 장치(110)를 보여주는 블록도이다. 도 1 및 도 2를 참조하면, 불휘발성 메모리 장치(110)는 메모리 셀 어레이(111), 행 디코더 회로(112), 페이지 버퍼 회로(113), 데이터 입력 및 출력 회로(114), 패스-페일 체크 회로(115), 그리고 제어 로직 회로(116)를 포함한다.
메모리 셀 어레이(111)는 메모리 블록들(BLK1~BLKz)을 포함한다. 각 메모리 블록은 메모리 셀들을 포함한다. 메모리 블록은 적어도 하나의 접지 선택 라인(GSL), 더미 워드 라인들(DWL), 워드 라인들(WL), 그리고 적어도 하나의 스트링 선택 라인(SSL)을 통해 행 디코더 회로(112)에 연결될 수 있다.
각 메모리 블록은 복수의 비트 라인들(BL)을 통해 페이지 버퍼 회로(113)에 연결될 수 있다. 복수의 메모리 블록들(BLK1~BLKz)은 복수의 비트 라인들(BL)에 공통으로 연결될 수 있다. 복수의 메모리 블록들(BLK1~BLKz)의 메모리 셀들은 동일한 구조들을 가질 수 있다.
메모리 블록들(BLK1~BLKz)은 제1 메모리 블록들(BLK1~BLKn) 및 제2 메모리 블록들(BLKn+1~BLKz)로 구분될 수 있다. 제1 메모리 블록들(BLK1~BLKn) 및 제2 메모리 블록들(BLKn+1~BLKz)은 사용 용도에 따라 구분되는 것이며 동일한 구조들을 가질 수 있다.
예시적으로, 복수의 메모리 블록들(BLK1~BLKz) 각각은 소거 동작의 단위일 수 있다. 메모리 셀 어레이(111)의 메모리 셀들은 하나의 메모리 블록의 단위로 소거될 수 있다. 하나의 메모리 블록에 속한 메모리 셀들은 동시에 소거될 수 있다. 다른 예로서, 각 메모리 블록은 서브 블록들로 분할될 수 있다. 복수의 서브 블록들 각각은 소거 동작의 단위일 수 있다.
예시적으로, 복수의 메모리 블록들(BLK1~BLKz) 각각은 블록 주소에 의해 식별되는 물리적 저장 공간을 포함할 수 있다. 복수의 워드 라인들(WL) 각각은 행 주소에 의해 식별되는 물리적 저장 공간에 대응할 수 있다. 복수의 비트 라인들(BL) 각각은 열 주소에 의해 식별되는 물리적 저장 공간에 대응할 수 있다.
예시적으로, 각 메모리 블록은 복수의 물리 페이지들(예를 들어, PAGE1~PAGE8)을 포함하며, 각 물리 페이지는 복수의 메모리 셀들을 포함할 수 있다. 각 물리 페이지는 프로그램 동작의 단위일 수 있다. 각 물리 페이지의 메모리 셀들은 동시에 프로그램될 수 있다. 각 물리 페이지는 복수의 논리 페이지들을 포함할 수 있다.
각 물리 페이지의 메모리 셀들 각각에 프로그램되는 비트들은 각각 논리 페이지들을 형성할 수 있다. 각 물리 페이지의 메모리 셀들에 프로그램되는 첫 번째 비트들은 첫 번째 논리 페이지를 형성할 수 있다. 각 물리 페이지의 메모리 셀들에 프로그램되는 K-번째 비트들(K는 양의 정수)은 K-번째 논리 페이지를 형성할 수 있다.
행 디코더 회로(112)는 복수의 접지 선택 라인들(GSL), 복수의 더미 워드 라인들(DWL), 복수의 워드 라인들(WL), 그리고 복수의 스트링 선택 라인들(SSL)을 통해 메모리 셀 어레이(111)에 연결된다. 행 디코더 회로(112)는 제어 로직 회로(116)의 제어에 따라 동작한다.
행 디코더 회로(112)는 제어기(120)로부터 제1 채널(예를 들어, 입력 및 출력 채널)을 통해 수신되는 주소를 디코딩하고, 디코딩된 주소에 따라 스트링 선택 라인들(SSL), 더미 워드 라인들(DWL), 워드 라인들(WL), 그리고 접지 선택 라인들(GSL)에 인가되는 전압들을 제어할 수 있다.
페이지 버퍼 회로(113)는 복수의 비트 라인들(BL)을 통해 메모리 셀 어레이(111)에 연결된다. 페이지 버퍼 회로(113)는 복수의 데이터 라인들(DL)을 통해 데이터 입력 및 출력 회로(114)와 연결된다. 페이지 버퍼 회로(113)는 제어 로직 회로(116)의 제어에 따라 동작한다.
쓰기 동작 시에, 페이지 버퍼 회로(113)는 메모리 셀들에 기입될 데이터를 저장할 수 있다. 저장된 데이터에 기반하여, 페이지 버퍼 회로(113)는 복수의 비트 라인들(BL)에 전압들을 인가할 수 있다. 읽기 동작, 또는 쓰기 동작 또는 소거 동작의 검증 읽기 시에, 페이지 버퍼 회로(113)는 비트 라인들(BL)의 전압들을 감지하고, 감지 결과를 저장할 수 있다.
데이터 입력 및 출력 회로(114)는 복수의 데이터 라인들(DL)을 통해 페이지 버퍼 회로(113)와 연결된다. 데이터 입력 및 출력 회로(114)는 페이지 버퍼 회로(113)에 의해 읽힌 데이터를 입력 및 출력 채널을 통해 제어기(120)로 출력하고, 제어기(120)로부터 입력 및 출력 채널을 통해 수신되는 데이터를 페이지 버퍼 회로(113)로 전달할 수 있다.
패스-페일 체크 회로(PFC)(115)는 쓰기 동작 또는 소거 동작의 검증 읽기 후에, 페이지 버퍼 회로(113)로부터 감지 결과를 수신할 수 있다. 수신된 감지 결과에 기반하여, 패스-페일 체크 회로(115)는 쓰기 또는 소거의 패스 또는 페일을 판별할 수 있다.
예를 들어, 쓰기 동작의 검증 읽기 시에, 페이지 버퍼 회로(113)는 턴-온 되는 온-셀들의 수를 카운트할 수 있다. 소거 동작의 검증 읽기 시에, 페이지 버퍼 회로(113)는 턴-오프 되는 오프-셀들의 수를 카운트할 수 있다. 카운트 값이 문턱값 이상이면, 패스-페일 체크 회로(115)는 페일을 판별할 수 있다. 온-셀들의 수가 문턱값보다 작으면, 패스-페일 체크 회로(115)는 패스를 판별할 수 있다.
제어 로직 회로(116)는 제어기(120)로부터 제1 채널을 통해 커맨드를 수신하고, 제2 채널(제어 채널)을 통해 제어 신호를 수신할 수 있다. 제어 로직 회로(116)는 제어 신호에 응답하여 제1 채널을 통해 수신되는 명령을 수신하고, 제2 채널을 통해 수신되는 주소를 행 디코더 회로(112)로 라우팅하고, 그리고 제1 채널을 통해 수신되는 데이터를 데이터 입력 및 출력 회로(114)로 라우팅할 수 있다.
제어 로직 회로(116)는 수신된 명령을 디코딩하고, 디코딩된 명령에 따라 불휘발성 메모리 장치(110)를 제어할 수 있다. 쓰기 동작 또는 소거 동작의 검증 읽기 시에, 제어 로직 회로(116)는 패스-페일 체크 회로(115)로부터 패스 또는 페일의 판별 결과를 수신할 수 있다.
도 3은 본 발명의 실시 예에 따른 스토리지 장치(100)가 이전 데이터를 갱신하는 예를 보여주는 순서도이다. 도 1 내지 도 3을 참조하면, S110 단계에서, 제어기(120)는 호스트 장치(20)로부터 쓰기 데이터와 함께 쓰기 요청을 수신할 수 있다.
S120 단계에서, 제어기(120)는 수신된 쓰기 데이터가 이전 데이터를 갱신하기 위한 것인지 판단할 수 있다. 예를 들어, 제어기(120)는 쓰기 요청에 포함된 쓰기 데이터(예를 들어, 제1 쓰기 데이터) 또는 제1 쓰기 데이터로부터 파생된(예를 들어, 생성된) 제2 쓰기 데이터가 갱신을 위한 것인지 판단할 수 있다.
쓰기 데이터가 갱신을 위한 것이면, S130 단계에서, 제어기(120)는 쓰기 데이터가 보안 쓰기 동작에 대한 것인지 판단할 수 있다. 예를 들어, 제어기(120)는 호스트 장치(20)로부터 제공되는 정보에 기반하여 또는 쓰기 데이터의 특징에 기반하여 판단을 수행할 수 있다.
예를 들어, 쓰기 요청이 제1 쓰기 데이터를 포함하고, 제어기(120)가 제1 쓰기 데이터로부터 제2 쓰기 데이터를 생성할 수 있다. 제1 쓰기 데이터는 제1 메모리 블록들(BLK1~BLKn)의 정상 쓰기 동작에 대한 갱신 데이터일 수 있다. 제2 쓰기 데이터는 제2 메모리 블록들(BLKn+1~BLKz)의 보안 쓰기 동작에 대한 갱신 데이터일 수 있다.
쓰기 데이터가 보안 쓰기 동작에 대한 갱신 데이터이면, S140 단계가 수행된다. S140 단계에서, 스토리지 장치(100)는 이전 데이터에 대한 제거 쓰기 동작을 수행할 수 있다. 제어기(120)는 이전 데이터의 물리 주소들(PBA)과 함께 제거 쓰기 명령을 불휘발성 메모리 장치(110)로 전송할 수 있다.
이후에, S150 단계에서, 제어기(120)는 쓰기 데이터(예를 들어, 갱신 데이터)에 대한 쓰기 동작을 수행할 수 있다. 제어기(120)는 쓰기 데이터의 물리 주소들(PBA)과 함께 쓰기 명령을 불휘발성 메모리 장치(110)로 전송할 수 있다.
즉, 제2 메모리 블록들(BLKn+1~BLKz)에 대한 보안 쓰기 동작이 이전 데이터를 갱신할 때, 제어기(120)는 제거 쓰기 명령 및 쓰기 명령을 순차적으로 불휘발성 메모리 장치(110)로 전송할 수 있다. 불휘발성 메모리 장치(110)는 제거 쓰기 동작 및 쓰기 동작을 순차적으로 수행할 수 있다. 보안 쓰기 동작은 제거 쓰기 동작 및 쓰기 동작을 포함할 수 있다.
예를 들어, 제어기(120)는 제거 쓰기 명령을 전송한 후에 쓰기 명령을 전송하거나 또는 쓰기 명령을 전송한 후에 제거 쓰기 명령을 전송할 수 있다. 불휘발성 메모리 장치(110)는 제거 쓰기 동작을 수행한 후에 쓰기 동작을 수행하거나 또는 쓰기 동작을 수행한 후에 제거 쓰기 동작을 수행할 수 있다.
예시적으로, 제거 쓰기 동작을 위한 제거 쓰기 명령은 쓰기 동작을 위한 쓰기 명령과 동일한 형태를 가질 수 있다. 다른 예로서, 제거 쓰기 동작을 위한 제거 쓰기 명령은 쓰기 동작을 위한 쓰기 동작과 다른 형태를 가질 수 있다.
예를 들어, 제어기(120)는 제거 쓰기 동작을 위한 더미 데이터를 불휘발성 메모리 장치(110)로 전송할 수 있다. 다른 예로서, 불휘발성 메모리 장치(110)는 제거 쓰기 동작을 위한 더미 데이터를 자체적으로 생성할 수 있다. 제거 쓰기 동작이 수행되면, 제2 메모리 블록들(BLKn+1~BLKz)에 기입된 이전 데이터가 읽기 불가능한 형태로 제거될 수 있다.
제거 쓰기 동작의 "쓰기"의 용어가 암시하는 바와 같이, 제거 쓰기 동작은 소거 동작과 달리 메모리 셀들의 문턱 전압들을 높임으로써 이전 데이터를 읽기 불가능한 형태로 제거할 수 있다. 제거 쓰기 동작은 페이지의 단위로 선별적으로 수행될 수 있다.
제2 메모리 블록들(BKLn+1~BLKz) 중 이전 데이터가 기입된 제2 메모리 블록에서 소거 동작을 수행하지 않고 이전 데이터가 기입된 페이지들에 대해서만 제거 쓰기 동작을 수행함으로써 이전 데이터가 제거될 수 있다. 따라서, 다른 데이터보다 높은 보안이 필요한 데이터를 갱신할 때에, 소거 동작 없이도 이전 데이터가 읽기 불가능한 형태로 제거된다.
제2 메모리 블록들(BLKn+1~BLKz)에 기입된 데이터를 갱신할 때에 소거 동작이 필요하지 않으므로, 불휘발성 메모리 장치(110)에서 수행되는 소거 동작의 수가 감소된다. 소거 동작의 수가 감소됨에 따라, 제2 메모리 블록들(BLKn+1~BLKz)에 인가되는 스트레스가 감소하고, 불휘발성 메모리 장치(110) 및 스토리지 장치(100)의 수명이 증가한다.
다시 S130 단계를 참조하면, 쓰기 데이터가 보안 쓰기 동작에 대한 것이 아닐 때, S160 단계가 수행된다. S160 단계에서, 제어기(120)는 이전 데이터를 무효화할 수 있다. 예를 들어, 제어기(120)는 불휘발성 메모리 장치(110)로 어떠한 명령도 전송하지 않고 이전 데이터를 무효화할 수 있다.
제어기(120)는 이전 데이터의 논리 주소들(LBA) 및 물리 주소들(PBA) 사이의 사상을 해제하거나 또는 무효 데이터를 알리는 무효 플래그 또는 무효 마크를 사상 정보에 추가할 수 있다. 이후에, 스토리지 장치(100)는 S150 단계의 쓰기 동작을 수행할 수 있다.
즉, 보안 쓰기 동작이 아닌 정상 쓰기 동작을 통해 제1 메모리 블록들(BLK1~BLKn)에 기입된 데이터를 갱신할 때, 제어기(120)는 이전 데이터를 무효화하고 쓰기 명령을 불휘발성 메모리 장치(110)로 전송할 수 있다. 불휘발성 메모리 장치(110)는 쓰기 동작을 수행할 수 있다. 예를 들어, 제어기(120)는 쓰기 명령을 전송한 후에 무효화를 수행하거나 또는 무효화를 수행한 후에 쓰기 명령을 전송할 수 있다.
다시 S120 단계를 참조하면, 쓰기 데이터가 갱신을 위한 것이 아니면, S150 단계가 수행된다. S150 단계에서, 스토리지 장치(100)는 쓰기 동작을 수행할 수 있다. 제어기(120)는 쓰기 명령을 불휘발성 메모리 장치(110)로 전송할 수 있다. 불휘발성 메모리 장치(110)는 쓰기 동작을 수행할 수 있다.
예를 들어, 제어기(120)는 제1 쓰기 데이터와 함께 제1 메모리 블록들(BLK1~BLKn)에 대한 쓰기 명령을 불휘발성 메모리 장치(110)에 전송할 수 있다. 제어기(120)는 제2 쓰기 데이터와 함께 제2 메모리 블록들(BLKn+1~BLKz)에 대한 쓰기 명령을 불휘발성 메모리 장치(110)에 전송할 수 있다.
도 4는 스토리지 장치(100)가 호스트 장치(20)의 요청에 따라 제2 메모리 블록들(BLKn+1~BLKz)에 데이터를 기입하는 보안 쓰기 동작의 예를 보여준다. 도 4를 참조하면, S210 단계에서, 호스트 장치(20)는 쓰기 요청을 제어기(120)로 전송할 수 있다. 쓰기 요청은 제1 쓰기 데이터를 포함할 수 있다.
쓰기 요청에 응답하여, 제어기(120)는 쓰기 요청이 제2 메모리 블록들(BLKn+1~BLKz)에 대한 보안 쓰기 동작을 유발하는지 판단할 수 있다. 예를 들어, 호스트 장치(20)로부터 제공되는 정보에 따라, 또는 제1 쓰기 데이터의 특성으로부터, 제어기(120)는 제1 쓰기 데이터가 보안 쓰기 동작을 필요로 하는지 판단할 수 있다.
다른 예로서, 제어기(120)는 제1 쓰기 데이터로부터 제1 쓰기 데이터를 관리하기 위한 제2 쓰기 데이터를 생성할 수 있다. 제어기(120)는 제1 쓰기 데이터를 정상 쓰기 동작을 통해 제1 메모리 블록들(BLK1~BLKn)에 기입하고, 제2 쓰기 데이터를 보안 쓰기 동작을 통해 제2 메모리 블록들(BLKn+1~BLKz)에 기입할 수 있다.
쓰기 요청에 따라 보안 쓰기 동작이 유발되면, S220 단계에서, 제어기(120)는 제2 메모리 블록들(BLKn+1~BLKz)에 대해 쓰기 동작을 수행할 수 있다. 예를 들어, 제어기(120)는 제2 메모리 블록들(BLKn+1~BLKn) 중 하나의 메모리 블록을 가리키는 물리 주소들(PBA) 및 쓰기 명령을 제1 쓰기 데이터 또는 제2 쓰기 데이터와 함께 불휘발성 메모리 장치(110)로 전송할 수 있다.
쓰기 명령에 따라, 불휘발성 메모리 장치(110)는 제2 메모리 블록들(BLKn+1~BLKz)에 대해 쓰기 동작을 수행할 수 있다. 쓰기 동작이 수행되면, S230 단계에서 쓰기 데이터가 기입된다. 예를 들어, 쓰기 데이터는 제n+2 메모리 블록(BLKn+2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 기입될 수 있다.
도 5는 쓰기 동작이 수행될 때, 메모리 셀들의 문턱 전압들이 변화하는 예를 보여준다. 예시적으로, 제n+2 메모리 블록(BLKn+2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)의 메모리 셀들의 문턱 전압들이 변화하는 예가 도 5에 도시된다. 도 5에서, 가로축은 메모리 셀들의 문턱 전압(Vth)을 가리키고, 세로축은 메모리 셀들의 수를 가리킨다.
쓰기 동작이 수행되기 전에, 메모리 셀들의 문턱 전압들은 소거 상태(E)에 대응하는 문턱 전압 범위에 속할 수 있다. 쓰기 동작이 수행되면, 메모리 셀들의 문턱 전압들은 쓰기 데이터에 따라 소거 상태(E) 및 제1 내지 제7 프로그램 상태들(P1~P7)에 대응하는 문턱 전압 범위들에 속하도록 상승할 수 있다.
쓰기 동작은 제1 내지 제7 검증 전압들(VFY1~VFY7)을 이용하여 수행될 수 있다. 제k 프로그램 상태(Pk)(k는 1 내지 7의 범위 내의 정수)에 대응하는 데이터가 기입되는 메모리 셀들의 문턱 전압은 제k 검증 전압(VFYk)보다 높아지도록 제어될 수 있다.
도 6은 쓰기 동작 시에 메모리 셀들에 인가되는 전압들의 예를 보여준다. 예시적으로, 워드 라인들을 통해 메모리 셀들에 인가되는 전압들의 예가 도 6에 도시된다. 도 2 및 도 4 내지 도 6을 참조하면, 쓰기 동작은 프로그램 루프들을 포함할 수 있다. 각 프로그램 루프는 메모리 셀들에 프로그램 전압(VPGM)을 인가하고 이후에 검증 전압들(VFY)을 인가하는 것을 포함할 수 있다.
첫 번째 프로그램 루프에서 메모리 셀들에 인가되는 프로그램 전압(VPGM)은 제1 프로그램 시작 전압(Vini1)일 수 있다. 검증 전압들(VFY)은 제1 내지 제7 프로그램 상태들(P1~P7)에 대응하는 제1 내지 제7 검증 전압들(VFY1~VFY7)을 포함할 수 있다.
각 프로그램 루프에서 프로그램 전압(VPGM)이 인가되면 메모리 셀들의 문턱 전압들이 상승한다. 불휘발성 메모리 장치(110)는 검증 전압들(VFY)을 이용하여 검증 읽기 동작들을 수행할 수 있다. 검증 읽기 동작들의 결과에 따라, 패스-페일 체크 회로(115)는 메모리 셀들의 문턱 전압들이 목표 범위에 속하는지 판단할 수 있다.
메모리 셀들의 문턱 전압들이 목표 범위를 초과하여 과프로그램되는 것을 방지하기 위하여, 제1 프로그램 시작 전압(Vini1)은 제1 전압(V1)을 반영하여 결정될 수 있다. 예를 들어, 소거 상태(E)의 문턱 전압 범위에서 가장 높은 문턱 전압을 갖는 메모리 셀에 제1 프로그램 시작 전압(Vini1)이 인가될 때, 해당 메모리 셀의 문턱 전압이 제1 프로그램 상태(P1)의 문턱 전압 범위를 초과하지 않도록 제1 프로그램 시작 전압(Vini1)이 설정될 수 있다.
이후에, 프로그램 루프들이 반복됨에 따라, 프로그램 전압(VPGM)은 점진적으로 증가할 수 있다. 프로그램 전압(VPGM)을 점진적으로 증가함으로써, 메모리 셀들이 과프로그램되지 않고 목표 문턱 전압 범위에 속하는 문턱 전압들을 가질 수 있다.
도 5 및 도 6에서, 제n+2 메모리 블록(BLKn+2)의 하나의 메모리 셀에 세 개의 비트들의 기입되는 예가 설명되었다. 그러나 제n+2 메모리 블록(BLKn+2)의 하나의 메모리 셀에 기입되는 비트들의 수는 한정되지 않는다. 예를 들어, 보안 쓰기 동작을 필요로 하는 보안 데이터는 다른 데이터보다 높은 신뢰도를 필요로 할 수 있다.
따라서, 보안 쓰기 동작 시에, 제n+2 메모리 블록(BLKn+2)의 하나의 메모리 셀에 보안 데이터의 하나 또는 두 개의 비트들이 기입될 수 있다. 또한, 스토리지 장치(100)의 신뢰도가 향상되면, 제n+2 메모리 블록(BLKn+2)의 하나의 메모리 셀에 보안 데이터의 넷 이상의 비트들이 기입될 수 있다.
도 5를 참조하여 설명된 것과 연관되어, 보안 쓰기 동작이 수행된 후에 메모리 셀들의 문턱 전압 범위들의 수는 “2^(기입된 비트들의 수)” 일 수 있다. 도 6을 참조하여 설명된 것과 연관되어, 보안 쓰기 동작이 수행될 때의 검증 전압들의 수는 “2^(기입된 비트들의 수)-1”일 수 있다.
도 7은 스토리지 장치(100)가 호스트 장치(20)의 요청에 따라 제2 메모리 블록들(BLKn+1~BLKz)에 기입된 이전 데이터를 갱신하는 예를 보여준다. 도 7을 참조하면, S310 단계에서, 호스트 장치(20)는 보안 쓰기 동작을 위한 쓰기 데이터를 제어기(120)로 전송할 수 있다. 쓰기 요청은 제3 쓰기 데이터를 포함할 수 있다.
쓰기 요청에 응답하여, 제어기(120)는 쓰기 요청이 제2 메모리 블록들(BLKn+1~BLKz)에 대한 보안 쓰기 동작을 유발하는지 판단할 수 있다. 예를 들어, 제어기(120)는 제3 쓰기 데이터 또는 제3 쓰기 데이터로부터 생성되는 제4 쓰기 데이터가 제2 메모리 블록들(BLKn+1~BLKz)에 대한 보안 쓰기 동작을 필요로 하는지 판단할 수 있다.
쓰기 요청에 따라 보안 쓰기 동작이 유발되면, 제어기(120)는 제3 쓰기 데이터 또는 제4 쓰기 데이터가 제2 메모리 블록들(BLKn+1~BLKz)에 이미 기입된 데이터에 대한 갱신을 유발하는지 판단할 수 있다. 예를 들어, 제3 쓰기 데이터 또는 제4 쓰기 데이터가 제n+2 메모리 블록(BLKn+2)의 제1 및 제2 페이지들(PAGE1, PAGE2)에 기입된 데이터의 갱신 데이터이면, S320 단계에서, 제어기(120)는 제n+2 메모리 블록(BLKn+2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 기입된 이전 데이터에 대해 제거 쓰기 동작을 수행할 수 있다.
제어기(120)는 이전 데이터의 물리 주소들(PBA) 및 제거 쓰기 명령을 불휘발성 메모리 장치(110)에 전송할 수 있다. 제거 쓰기 명령은 쓰기 명령과 동일한 형태를 갖거나 또는 다른 형태를 가질 수 있다. 제거 쓰기 명령에 응답하여, 불휘발성 메모리 장치(110)는 이전 데이터가 기입된 제n+2 메모리 블록(BLKn+2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 대해 제거 쓰기 동작을 수행할 수 있다.
제거 쓰기 동작은 이전 데이터가 기입된 메모리 셀들의 문턱 전압들을 올려 이전 데이터를 제거하는 것을 포함할 수 있다. 제거 쓰기 동작이 수행되면, S330 단계에서, 이전 데이터가 읽기 불가능한 형태로 제거될 수 있다. 제어기(120)는 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)의 물리 주소들(PBA)에 무효 데이터가 저장된 것으로 식별할 수 있다.
제거 쓰기 동작이 완료된 후에, S340 단계에서, 제어기(120)는 제n+2 메모리 블록(BLKn+2)에 대해 쓰기 동작을 수행할 수 있다. 제어기(120)는 제n+2 메모리 블록(BLKn+2)의 물리 주소들(PBA) 및 쓰기 명령을 제3 쓰기 데이터 또는 제4 쓰기 데이터와 함께 불휘발성 메모리 장치(110)로 전송할 수 있다.
쓰기 명령에 응답하여, 불휘발성 메모리 장치(110)는 쓰기 동작을 수행할 수 있다. 쓰기 동작이 수행되면, S350 단계에서, 제n+2 메모리 블록(BLKn+2)의 제3 페이지(PAGE3) 및 제4 페이지(PAGE4)에 제3 쓰기 데이터 또는 제4 쓰기 데이터가 기입될 수 있다.
예시적으로, 제2 메모리 블록들(BLKn+1~BLKz)에 저장된 데이터가 갱신될 때, 갱신 데이터는 이전 데이터와 동일한 메모리 블록에 기입될 수 있다. 동일한 메모리 블록의 저장 용량이 부족하면, 쓰기 동작은 자유 메모리 블록에 대해 수행될 수 있다.
예를 들어, 제n+2 메모리 블록(BLKn+2)의 저장 용량이 부족하면, 제n+2 메모리 블록(BLKn+2)의 이전 데이터에 대해 제거 쓰기 동작이 수행된 후에 다른 메모리 블록(예를 들어, BLKz)에 대해 쓰기 동작이 수행될 수 있다. 저장 용량이 부족한 제n+2 메모리 블록(BLKn+2)에 대해 소거 동작이 예약될 수 있다. 제어기(120)는 내부 스케줄에 따라 제n+2 메모리 블록(BLKn+2)에 소거 명령을 전송할 수 있다. 불휘발성 메모리 장치(110)는 소거 명령에 따라 제n+2 메모리 블록(BLKn+2)에 대해 소거 동작을 수행할 수 있다.
도 8은 제거 쓰기 동작이 수행될 때, 메모리 셀들의 문턱 전압들이 변화하는 예를 보여준다. 예시적으로, 제n+2 메모리 블록(BLKn+2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)의 메모리 셀들의 문턱 전압들이 변화하는 예가 도 8에 도시된다. 도 8에서, 가로축은 메모리 셀들의 문턱 전압(Vth)을 가리키고, 세로축은 메모리 셀들의 수를 가리킨다.
도 5를 참조하여 설명된 바와 같이, 제거 쓰기 동작이 수행되기 전에, 메모리 셀들의 문턱 전압들은 소거 상태(E) 및 제1 내지 제7 프로그램 상태들(P1~P7)에 대응하는 문턱 전압 범위들에 각각 속할 수 있다. 제거 쓰기 동작이 수행되면, 메모리 셀들의 문턱 전압들은 제거 상태(S)의 문턱 전압 범위로 상승할 수 있다.
제거 쓰기 동작은 제1 목표 전압(Vtar1)을 이용하여 수행될 수 있다. 제거 쓰기 동작은 메모리 셀들의 문턱 전압들을 제1 목표 전압(Vtar1)보다 높게 제어할 수 있다. 예를 들어, 제1 목표 전압(Vtar1)은 가장 높은 문턱 전압 범위인 제7 프로그램 상태(P7)에 따라 결정될 수 있다. 제1 목표 전압(Vtar1)은 제7 프로그램 상태(P7)의 제7 검증 전압(VFY7)과 같게 설정될 수 있다.
메모리 셀들의 문턱 전압들이 제1 목표 전압(Vtar1)보다 높게 제어되면, 메모리 셀들로부터 이전 데이터를 읽을 수 없다. 따라서, 이전 데이터가 제거되고 보안성이 향상된다.
제거 쓰기 동작은 쓰기 동작과 동일한 방식으로 수행된다. 즉, 제거 쓰기 동작은 페이지의 단위로 수행될 수 있다. 제거 쓰기 동작은 이전 데이터가 저장된 제n+2 메모리 블록(BLKn+2)에서 이전 데이터가 저장된 제1 및 제2 페이지들(PAGE1, PAGE2)에 대해 수행된다. 제거 쓰기 동작이 수행되어도, 제n+2 메모리 블록(BKLn+2)의 나머지 페이지들은 사용 가능하다. 따라서, 제n+2 메모리 블록(BLKn+2)을 소거하지 않고도 갱신 데이터가 제n+2 메모리 블록(BLKn+2)에 기입될 수 있다.
도 9는 제거 쓰기 동작 시에 메모리 셀들에 인가되는 전압들의 예를 보여준다. 예시적으로, 워드 라인들을 통해 메모리 셀들에 인가되는 전압들의 예가 도 9에 도시된다. 도 2 및 도 7 내지 도 9를 참조하면, 제거 쓰기 동작은 프로그램 루프들을 포함할 수 있다. 각 프로그램 루프는 메모리 셀들에 프로그램 전압(VPGM)을 인가하고 이후에 제1 목표 전압(Vtar1)을 인가하는 것을 포함할 수 있다.
첫 번째 프로그램 루프에서 메모리 셀들에 인가되는 프로그램 전압(VPGM)은 제2 프로그램 시작 전압(Vini2)일 수 있다. 각 프로그램 루프에서 프로그램 전압(VPGM)이 인가되면 메모리 셀들의 문턱 전압들이 상승한다. 불휘발성 메모리 장치(110)는 제1 목표 전압(Vtar1)을 이용하여 검증 읽기 동작을 수행할 수 있다. 검증 읽기 동작의 결과에 따라, 패스-페일 체크 회로(115)는 메모리 셀들의 문턱 전압들이 제1 목표 전압(Vtar1)보다 높아졌는지 판단할 수 있다.
메모리 셀들의 문턱 전압들이 목표 범위를 초과하여 과프로그램되는 것을 방지하기 위하여, 제2 프로그램 시작 전압(Vini2)은 제2 전압(V2)을 반영하여 결정될 수 있다. 예를 들어, 소거 상태(E)의 문턱 전압 범위에서 가장 높은 문턱 전압을 갖는 메모리 셀에 제2 프로그램 시작 전압(Vini2)이 인가될 때, 해당 메모리 셀의 문턱 전압이 제거 상태(S)의 문턱 전압 범위를 초과하지 않도록 제2 프로그램 시작 전압(Vini2)이 설정될 수 있다.
예시적으로, 제2 전압(V2)은 도 5를 참조하여 설명된 제1 전압(V1)보다 높다. 따라서, 제거 쓰기 동작의 제2 프로그램 시작 전압(Vini2)은 도 6의 쓰기 동작의 제1 프로그램 시작 전압(Vini1)보다 높을 수 있다. 예시적으로, 제거 쓰기 동작의 프로그램 루프들이 수행되는 횟수는 쓰기 동작의 프로그램 루프들이 수행되는 횟수보다 적을 수 있다.
도 10은 제거 쓰기 동작 시에 메모리 셀들에 인가되는 전압들의 다른 예를 보여준다. 예시적으로, 워드 라인들을 통해 메모리 셀들에 인가되는 전압들의 예가 도 10에 도시된다. 도 2 및 도 7, 도 8 및 도 10을 참조하면, 제거 쓰기 동작은 프로그램 루프들을 포함할 수 있다. 각 프로그램 루프는 메모리 셀들에 프로그램 전압(VPGM)을 인가하는 것을 포함할 수 있다.
제거 쓰기 동작은 이전 데이터를 식별 불가능한 형태로 제거하는 것을 의도한다. 따라서, 제1 목표 전압(Vtar1)을 이용하여 메모리 셀들의 문턱 전압들을 제거 상태(S)로 모으는 대신, 미리 정해진 횟수만큼 프로그램 전압들(VPGM)을 인가하는 것으로 이전 데이터가 제거될 수 있다. 예시적으로, 프로그램 전압(VPGM)은 점진적으로 상승할 수 있다. 다른 예로서, 동일한 레벨을 갖는 프로그램 전압(VPGM)이 메모리 셀들에 반복적으로 인가될 수 있다.
도 11은 제거 쓰기 동작이 수행될 때, 메모리 셀들의 문턱 전압들이 변화하는 다른 예를 보여준다. 예시적으로, 제n+2 메모리 블록(BLKn+2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)의 메모리 셀들의 문턱 전압들이 변화하는 예가 도 11에 도시된다. 도 11에서, 가로축은 메모리 셀들의 문턱 전압(Vth)을 가리키고, 세로축은 메모리 셀들의 수를 가리킨다.
도 8과 비교하면, 제거 쓰기 동작은 제2 목표 전압(Vtar2)을 이용하여 수행될 수 있다. 제2 목표 전압(Vtar2)은 제1 목표 전압(Vtar1)보다 낮을 수 있다. 예를 들어, 제2 목표 전압(Vtar2)은 검증 읽기 동작 시에 사용되는 제1 내지 제7 검증 전압들(VFY1~VFY7) 중 적어도 하나보다 낮을 수 있다.
제2 목표 전압(Vtar2)보다 낮은 문턱 전압들을 갖는 메모리 셀들은 제2 목표 전압(Vtar2)보다 높은 문턱 전압들을 갖는 제거 상태(S)의 문턱 전압 범위에 속하도록 제어될 수 있다. 예를 들어, 메모리 셀들이 갖는 소거 상태(E) 및 제1 내지 제7 프로그램 상태들(P1~P7)의 문턱 전압 범위들 중에서 적어도 하나의 문턱 전압 범위에 속하는 메모리 셀들의 문턱 전압들이 제거 상태(S)로 상승할 수 있다.
예를 들어, 도 9 또는 도 10을 참조하여 설명된 전압 인가 방법에 더하여, 제2 목표 전압(Vtar2)보다 낮은 문턱 전압들을 갖는 메모리 셀들을 검출하기 위한 검증 읽기 동작이 선행될 수 있다.
메모리 셀들의 문턱 전압들이 목표 범위를 초과하여 과프로그램되는 것을 방지하기 위하여, 프로그램 시작 전압은 제3 전압(V3)을 반영하여 결정될 수 있다. 도 11을 참조하여 설명된 제거 쓰기 동작의 프로그램 시작 전압은 프로그램 동작의 프로그램 시작 전압보다 높을 수 있다.
도 12는 스토리지 장치(100)가 호스트 장치(20)의 요청에 따라 제2 메모리 블록들(BLKn+1~BLKz)에 새로운 데이터를 기입하는 예를 보여준다. 도 12를 참조하면, S410 단계에서, 호스트 장치(20)는 쓰기 요청을 제어기(120)로 전송할 수 있다. 쓰기 요청은 제5 쓰기 데이터를 포함할 수 있다.
예를 들어, 제5 쓰기 데이터 또는 제5 쓰기 데이터로부터 생성되는 제6 쓰기 데이터는 제2 메모리 블록들(BLKn+1~BLKz)에 새로운 데이터를 기입하는 것으로 판단될 수 있다. S420 단계에서, 제어기(120)는 제n+1 메모리 블록(BLKn+1)에 대해 쓰기 동작을 수행할 수 있다. 제어기(120)는 제n+1 메모리 블록(BLKn+1)의 물리 주소들(PBA) 및 쓰기 명령을 제5 쓰기 데이터 또는 제6 쓰기 데이터와 함께 불휘발성 메모리 장치(110)로 전송할 수 있다.
쓰기 명령에 응답하여, 불휘발성 메모리 장치(110)는 쓰기 동작을 수행할 수 있다. 쓰기 동작이 수행되면, S430 단계에서, 제n+1 메모리 블록(BLKn+1)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 쓰기 데이터가 기입될 수 있다. 예시적으로, 제어기(120)는 제2 메모리 블록들(BLKn+1~BLKz) 각각에 하나의 종류의 데이터를 유지할 수 있다.
도 13은 스토리지 장치(100)가 호스트 장치(20)의 요청에 따라 제1 메모리 블록들(BLK1~BLKn)에 데이터를 기입하는 예를 보여준다. 도 13을 참조하면, S510 단계에서, 호스트 장치(20)는 제1 쓰기 요청을 제어기(120)로 전송할 수 있다. 제1 쓰기 요청은 제7 쓰기 데이터를 포함할 수 있다.
제1 쓰기 요청에 따라 정상 쓰기 동작이 유발되면, S520 단계에서, 예를 들어, 제어기(120)는 제1 메모리 블록(BLK1)에 대해 쓰기 동작을 수행할 수 있다. 제어기(120)는 제1 메모리 블록(BLK1)의 물리 주소들(PBA) 및 쓰기 명령을 제7 쓰기 데이터와 함께 불휘발성 메모리 장치(110)로 전송할 수 있다. 쓰기 명령에 응답하여, S530 단계에서, 제1 메모리 블록(BLK1)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 쓰기 데이터가 기입될 수 있다.
S540 단계에서, 호스트 장치(20)는 제2 쓰기 요청을 제어기(120)로 전송할 수 있다. 제2 쓰기 요청은 제8 쓰기 데이터를 포함할 수 있다. 제2 쓰기 요청에 따라 정상 쓰기 동작이 유발되면, S550 단계에서, 예를 들어, 제어기(120)는 제1 메모리 블록(BLK1)에 대해 쓰기 동작을 수행할 수 있다.
제어기(120)는 제1 메모리 블록(BLK1)의 물리 주소들(PBA) 및 쓰기 명령을 제8 쓰기 데이터와 함께 불휘발성 메모리 장치(110)로 전송할 수 있다. S560 단계에서, 제1 메모리 블록(BLK1)의 제3 페이지(PAGE3) 및 제4 페이지(PAGE4)에 쓰기 데이터가 기입될 수 있다.
예시적으로, 제8 쓰기 데이터는 제7 쓰기 데이터의 갱신 데이터일 수 있다. 이때, 제어기(120)는 불휘발성 메모리 장치(110)에 제거 쓰기 명령을 전송하지 않을 수 있다. 제어기(120)는 제1 메모리 블록(BLK1)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 무효 데이터가 저장되어 있음을 알리는 플래그 또는 마크를 저장할 수 있다.
즉, 제어기(120)는 제1 메모리 블록들(BLK1~BLKn)에 저장된 데이터를 갱신할 때에, 이전 데이터를 무효 데이터로 처리할 수 있다. 제어기(120)는 제2 메모리 블록들(BLKn+1~BLKz)에 저장된 데이터를 갱신할 때에, 이전 데이터를 제거 쓰기 명령을 통해 제거할 수 있다. 제어기(120)는 제1 메모리 블록들(BLK1~BLKn) 및 제2 메모리 블록들(BLKn+1~BLKz)의 갱신 동작들을 서로 다르게 제어할 수 있다.
도 14는 제1 메모리 블록들(BLK1~BLKn)에서 소거 동작이 수행될 때, 메모리 셀들의 문턱 전압들이 변화하는 예를 보여준다. 도 14에서, 가로축은 메모리 셀들의 문턱 전압(Vth)을 가리키고, 세로축은 메모리 셀들의 수를 가리킨다. 예를 들어, 제1 메모리 블록들(BLK1~BLKn) 중 하나의 메모리 블록에 저장된 데이터가 모두 무효 데이터이면, 해당 메모리 블록이 소거될 수 있다.
도 5를 참조하여 설명된 바와 같이, 제1 메모리 블록들(BLK1~BLKn) 중 소거 대상인 메모리 블록의 메모리 셀들의 문턱 전압들은 소거 상태(E) 및 제1 내지 제7 프로그램 상태들(P1~P7)에 대응하는 문턱 전압 범위들에 각각 속할 수 있다. 소거 동작이 수행되면, 메모리 셀들의 문턱 전압들은 소거 상태(E)의 문턱 전압 범위로 낮아질 수 있다.
소거 동작은 소거 검증 전압(VFYE)을 이용하여 수행될 수 있다. 소거 동작은 메모리 셀들의 문턱 전압들을 소거 검증 전압(VFYE)보다 낮게 제어할 수 있다. 메모리 셀들의 문턱 전압들이 소거 검증 전압(VFYE)보다 낮게 제어되면, 소거 동작은 완료될 수 있다.
도 15는 소거 동작 시에 메모리 셀들에 인가되는 전압들의 예를 보여준다. 예시적으로, 기판을 통해 메모리 셀들에 인가되는 전압들의 예가 도 15에 도시된다. 도 2, 도 14 및 도 15를 참조하면, 소거 동작은 소거 루프들을 포함할 수 있다. 각 소거 루프는 메모리 셀들에 소거 전압(VERS)을 인가하고 이후에 소거 검증 전압(VFYE)을 인가하는 것을 포함할 수 있다.
첫 번째 소거 루프에서 메모리 셀들에 인가되는 소거 전압(VERS)은 제1 소거 시작 전압(Veini1)일 수 있다. 각 소거 루프에서 소거 전압(VERS)이 인가되면 메모리 셀들의 문턱 전압들이 하강한다. 불휘발성 메모리 장치(110)는 소거 검증 전압(VFYE)을 이용하여 검증 읽기 동작을 수행할 수 있다. 검증 읽기 동작의 결과에 따라, 패스-페일 체크 회로(115)는 메모리 셀들의 문턱 전압들이 소거 검증 전압(VFYE)보다 낮은지 판단할 수 있다.
메모리 셀들의 문턱 전압들이 소거 상태(E)의 목표 문턱 전압 범위를 초과하여 과소거되는 것을 방지하기 위하여, 제1 소거 시작 전압(Veini1)은 제4 전압(V4)을 반영하여 결정될 수 있다. 예를 들어, 제1 프로그램 상태(P1)의 문턱 전압 범위에서 가장 낮은 문턱 전압을 갖는 메모리 셀에 제1 소거 시작 전압(Veini1)이 인가될 때, 해당 메모리 셀의 문턱 전압이 소거 상태(E)의 문턱 전압 범위를 초과하지 않도록 제1 소거 시작 전압(Veini1)이 설정될 수 있다.
이후에, 소거 루프들이 반복됨에 따라, 소거 전압(VERS)은 점진적으로 증가할 수 있다. 소거 전압(VERS)을 점진적으로 증가함으로써, 메모리 셀들이 과소거되지 않고 소거 상태(E)의 목표 문턱 전압 범위에 속하는 문턱 전압들을 가질 수 있다.
도 16은 제2 메모리 블록들(BLKn+1~BLKz)에서 소거 동작이 수행될 때, 메모리 셀들의 문턱 전압들이 변화하는 예를 보여준다. 도 16에서, 가로축은 메모리 셀들의 문턱 전압(Vth)을 가리키고, 세로축은 메모리 셀들의 수를 가리킨다. 예를 들어, 제2 메모리 블록들(BLKn+1~BLKz) 중 하나의 메모리 블록에 저장된 데이터가 모두 무효 데이터이면, 해당 메모리 블록이 소거될 수 있다.
도 8을 참조하여 설명된 바와 같이, 제2 메모리 블록들(BLKn+1~BLKz) 중 소거 대상인 메모리 블록의 메모리 셀들의 문턱 전압들은 제거 상태(S)에 대응하는 문턱 전압 범위에 각각 속할 수 있다. 소거 동작이 수행되면, 메모리 셀들의 문턱 전압들은 소거 상태(E)의 문턱 전압 범위로 낮아질 수 있다.
소거 동작은 소거 검증 전압(VFYE)을 이용하여 수행될 수 있다. 소거 동작은 메모리 셀들의 문턱 전압들을 소거 검증 전압(VFYE)보다 낮게 제어할 수 있다. 메모리 셀들의 문턱 전압들이 소거 검증 전압(VFYE)보다 낮게 제어되면, 소거 동작은 완료될 수 있다.
도 17은 소거 동작 시에 메모리 셀들에 인가되는 전압들의 예를 보여준다. 예시적으로, 기판을 통해 메모리 셀들에 인가되는 전압들의 예가 도 17에 도시된다. 도 2, 도 16 및 도 17을 참조하면, 소거 동작은 소거 루프들을 포함할 수 있다. 각 소거 루프는 메모리 셀들에 소거 전압(VERS)을 인가하고 이후에 소거 검증 전압(VFYE)을 인가하는 것을 포함할 수 있다.
첫 번째 소거 루프에서 메모리 셀들에 인가되는 소거 전압(VERS)은 제2 소거 시작 전압(Veini2)일 수 있다. 각 소거 루프에서 소거 전압(VERS)이 인가되면 메모리 셀들의 문턱 전압들이 하강한다. 불휘발성 메모리 장치(110)는 소거 검증 전압(VFYE)을 이용하여 검증 읽기 동작을 수행할 수 있다. 검증 읽기 동작의 결과에 따라, 패스-페일 체크 회로(115)는 메모리 셀들의 문턱 전압들이 소거 검증 전압(VFYE)보다 낮아졌는지 판단할 수 있다.
메모리 셀들의 문턱 전압들이 목표 범위를 초과하여 과소거되는 것을 방지하기 위하여, 제2 소거 시작 전압(Veini2)은 제5 전압(V5)을 반영하여 결정될 수 있다. 예를 들어, 제거 상태(S)의 문턱 전압 범위에서 가장 낮은 문턱 전압을 갖는 메모리 셀에 제2 소거 시작 전압(Veini2)이 인가될 때, 해당 메모리 셀의 문턱 전압이 소거 상태(E)의 문턱 전압 범위를 초과하지 않도록 제2 소거 시작 전압(Veini2)이 설정될 수 있다.
예시적으로, 제5 전압(V5)은 도 14를 참조하여 설명된 제4 전압(V4)보다 높다. 따라서, 제2 메모리 블록들(BLKn+1~BLKz)의 소거 동작을 위한 제2 소거 시작 전압(Veini2)은 제1 메모리 블록들(BLK1~BLKn)의 소거 동작을 위한 제1 소거 시작 전압(Veini1)보다 높을 수 있다.
유사하게, 소거 대상인 메모리 블록의 메모리 셀들의 문턱 전압들은 도 11을 참조하여 설명된 상태들을 가질 수 있다. 이 경우에도, 제2 메모리 블록들(BLKn+1~BLKz)의 소거 동작을 위한 제2 소거 시작 전압(Veini2)은 제1 메모리 블록들(BLK1~BLKn)의 소거 동작을 위한 제1 소거 시작 전압(Veini1)보다 높을 수 있다.
이후에, 소거 루프들이 반복됨에 따라, 소거 전압(VERS)은 점진적으로 증가할 수 있다. 소거 전압(VERS)을 점진적으로 증가함으로써, 메모리 셀들이 과소거되지 않고 소거 상태(E)의 목표 문턱 전압 범위에 속하는 문턱 전압들을 가질 수 있다.
예시적으로, 제2 소거 시작 전압(Veini2)이 제1 소거 시작 전압(Veini1)보다 높으므로, 제2 메모리 블록들(BLKn+1~BLKz)의 소거 동작의 소거 루프들의 수는 제1 메모리 블록들(BLK1~BLKn)의 소거 동작의 소거 루프들의 수보다 적을 수 있다.
도 18은 스토리지 장치(100)가 호스트 장치(20)의 요청에 따라 제1 메모리 블록들(BLK1~BLKn) 및 제2 메모리 블록들(BLKn+1~BLKz)에 데이터를 기입하는 예를 보여준다. 도 18을 참조하면, S610 단계에서, 호스트 장치(20)는 쓰기 요청을 제어기(120)로 전송할 수 있다. 쓰기 요청은 제1 쓰기 데이터를 포함할 수 있다.
S620 단계에서, 제어기(120)는 제1 쓰기 데이터로부터 제2 쓰기 데이터를 생성할 수 있다. 예를 들어, 제어기(120)는 제1 쓰기 데이터의 해시 데이터 또는 해시 데이터의 일부를 제2 쓰기 데이터로서 생성할 수 있다. 제어기(120)는 제1 쓰기 데이터를 값(value)으로 그리고 제2 쓰기 데이터를 키(key)로 식별할 수 있다. 제2 쓰기 데이터는 제1 메모리 블록들(BLK1~BLKn) 중 특정한 저장 공간을 가리킬 수 있다.
S630 단계에서, 제어기(120)는 제1 메모리 블록들(BLK1~BLKn)에 대해 제1 쓰기 데이터를 이용하여 쓰기 동작을 수행할 수 있다. 예를 들어, 제어기(120)는 제1 메모리 블록들(BLK1~BLKn) 중 제2 쓰기 데이터가 가리키는 저장 공간, 예를 들어 제2 메모리 블록(BLK2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)의 물리 주소들 및 쓰기 명령을 제1 쓰기 데이터와 함께 불휘발성 메모리 장치(110)로 전송할 수 있다.
쓰기 명령에 응답하여, S640 단계에서, 제2 메모리 블록(BLK2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 제1 쓰기 데이터가 기입될 수 있다. S650 단계에서, 제어기(120)는 제2 메모리 블록들(BLKn+1~BLKz)에 대해 제2 쓰기 데이터를 이용하여 쓰기 동작을 수행할 수 있다.
예를 들어, 제어기(120)는 제2 메모리 블록들(BLKn+1~BLKz) 중 제n+2 메모리 블록(BLKn+2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 대해 쓰기 동작을 수행할 수 있다. 쓰기 명령에 응답하여, S660 단계에서, 제n+2 메모리 블록(BLKn+2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 제2 쓰기 데이터가 기입될 수 있다.
도 19는 스토리지 장치(100)가 호스트 장치(20)의 요청에 따라 제1 메모리 블록들(BLK1~BLKn) 및 제2 메모리 블록들(BLKn+1~BLKz)에 기입된 데이터를 갱신하는 예를 보여준다. 도 19를 참조하면, S710 단계에서, 호스트 장치(20)는 쓰기 요청을 제어기(120)로 전송할 수 있다. 쓰기 요청은 제3 쓰기 데이터를 포함할 수 있다. 예를 들어, 제3 쓰기 데이터는 제1 쓰기 데이터의 갱신 데이터일 수 있다.
S720 단계에서, 제어기(120)는 제3 쓰기 데이터로부터 제4 쓰기 데이터를 생성할 수 있다. S720 단계는 S620 단계와 동일하게 수행될 수 있다. S730 단계에서, 제어기(120)는 제1 메모리 블록들(BLK1~BLKn)에 대해 제3 쓰기 데이터를 이용하여 쓰기 동작을 수행할 수 있다. S740 단계에서, 제3 쓰기 데이터는 제4 쓰기 데이터가 가리키는 제2 메모리 블록(BLK2)의 제3 페이지(PAGE3) 및 제4 페이지(PAGE4)에 기입될 수 있다.
제3 쓰기 데이터가 제1 쓰기 데이터의 갱신 데이터이므로, S750 단계에서 제어기(120)는 제1 쓰기 데이터를 무효화할 수 있다. 예를 들어, 제1 쓰기 데이터는 제2 메모리 블록(BLK2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 유지될 수 있다. 제어기(120)는 제1 쓰기 데이터가 무효 데이터임을 알리는 플래그 또는 마크를 저장하거나 또는 제1 쓰기 데이터의 물리 주소들과 논리 주소들의 사상을 해제할 수 있다.
제3 쓰기 데이터가 제1 쓰기 데이터의 갱신 데이터이므로, 제4 쓰기 데이터는 제2 쓰기 데이터의 갱신 데이터일 수 있다. 따라서, S760 단계에서, 제어기(120)는 제n+2 메모리 블록(BLKn+2)에 기입된 제2 쓰기 데이터에 대해 제거 쓰기 동작을 수행할 수 있다. S770 단계에서, 제n+2 메모리 블록(BLKn+2)의 제1 페이지(PAGE1) 및 제2 페이지(PAGE2)에 기입된 제1 쓰기 데이터가 제거될 수 있다.
S780 단계에서, 제어기(120)는 제n+2 메모리 블록(BLKn+2)에 대해 제4 쓰기 데이터를 이용하여 쓰기 동작을 수행할 수 있다. S790 단계에서, 제n+2 메모리 블록(BLKn+2)의 제3 페이지(PAGE3) 및 제4 페이지(PAGE4)에 제4 쓰기 데이터가 기입될 수 있다.
도 20은 도 1 및 도 2의 메모리 블록들(BLK1~BLKz) 중 하나의 메모리 블록(BLKa)의 예를 보여주는 회로도이다. 도 20을 참조하면, 복수의 셀 스트링들(CS)이 기판(101) 위에서 제1 방향(예를 들어, 행 방향) 및 제2 방향(예를 들어, 열 방향)을 따라 배치될 수 있다.
복수의 셀 스트링들(CS)은 제2 방향을 따라 신장되는 제1 내지 제4 비트 라인들(BL1~BL4)에 각각 연결될 수 있다. 동일한 열에 위치한 셀 스트링들(CS)은 동일한 비트 라인에 연결될 수 있다. 복수의 셀 스트링들(CS)은 기판(101)과 수직한 제3 방향(예를 들어, 높이 방향)을 따라 적층되는 셀 트랜지스터들을 포함할 수 있다.
예를 들어, 셀 트랜지스터들은 접지 선택 트랜지스터들(GST), 더미 메모리 셀들(DMC1~DMC4), 메모리 셀들(MC1~MC8), 그리고 스트링 선택 트랜지스터들(SST)로 이용될 수 있다. 예를 들어, 셀 트랜지스터들은 동일한 구조들을 가질 수 있다.
접지 선택 트랜지스터들(GST)은 접지 선택 라인(GSL)에 연결될 수 있다. 더미 메모리 셀들(DMC1~DMC4)은 더미 워드 라인들(DWL1~DWL4)에 연결될 수 있다. 메모리 셀들(MC1~MC8)은 워드 라인들(WL1~WL8)에 연결될 수 있다. 스트링 선택 트랜지스터들(SST)은 스트링 선택 라인들(SSL1~SSL4)에 연결될 수 있다. 예시적으로, 스트링 선택 트랜지스터들(SST)과 유사하게, 동일 행의 접지 선택 트랜지스터들은 동일한 접지 선택 라인에 연결되고, 서로 다른 행들의 접지 선택 트랜지스터들은 서로 다른 접지 선택 라인들에 연결될 수 있다.
동일한 행의 접지 선택 트랜지스터들은 동일한 접지 선택 라인에 연결될 수 있다. 기판(101)으로부터 제3 방향을 따라 동일한 높이의 메모리 셀들 또는 더미 메모리 셀들은 동일한 워드 라인 또는 동일한 더미 워드 라인에 연결될 수 있다. 제3 방향을 따라 동일한 높이에 위치하고 그리고 동일한 행의 스트링 선택 트랜지스터들은 동일한 스트링 선택 라인에 연결될 수 있다.
예시적으로, 동일한 높이에 위치하고, 하나의 스트링 선택 라인(SSL1, SSL2, SSL3 또는 SSL4)과 연관된 메모리 셀들은 하나의 물리 페이지를 형성할 수 있다. 하나의 물리 페이지의 메모리 셀들은 하나의 서브 워드 라인에 연결될 수 있다. 동일한 높이에 위치한 물리 페이지들의 서브 워드 라인들은 하나의 워드 라인에 공통으로 연결될 수 있다.
메모리 블록(BLKa)은 3차원 메모리 어레이로 제공된다. 3차원 메모리 어레이는 기판(101) 및 메모리 셀들(MC)의 동작에 연관된 회로의 위에 배치되는 활성 영역을 갖는 메모리 셀들(MC)의 어레이들의 하나 또는 그 이상의 물리 레벨들에 획일적으로(monolithically) 형성될 수 있다. 메모리 셀들(MC)의 동작에 연관된 회로는 기판 내에 또는 기판 위에 위치할 수 있다. 획일적으로 형성되는 것은, 3차원 어레이의 각 레벨의 레이어들이 3차원 어레이의 하위 레벨의 레이어들 위에 직접 증착됨을 의미한다.
본 발명의 기술적 사상에 따른 일 예로서, 3차원 메모리 어레이는 수직의 방향성을 가져, 적어도 하나의 메모리 셀이 다른 하나의 메모리 셀 위에 위치하는 수직 셀 스트링들(CS)(또는 NAND 스트링들)을 포함한다. 적어도 하나의 메모리 셀은 전하 포획 레이어를 포함한다. 각 셀 스트링은 메모리 셀들(MC) 위에 위치하는 적어도 하나의 선택 트랜지스터를 더 포함한다. 적어도 하나의 선택 트랜지스터는 메모리 셀들(MC)과 동일한 구조를 갖고, 메모리 셀들(MC)과 함께 획일적으로 형성된다.
3차원 메모리 어레이가 복수의 레벨들로 구성되고, 레벨들 사이에서 워드 라인들 또는 비트 라인들이 공유되는 구성은 미국등록특허공보 제7,679,133호, 미국등록특허공보 제8,553,466호, 미국등록특허공보 제8,654,587호, 미국등록특허공보 제8,559,235호, 그리고 미국공개특허공보 제2011/0233648호에 개시되어 있으며, 본 발명의 레퍼런스로 포함된다.
도 20을 참조하여 설명된 바와 같이, 메모리 블록들(BLK1~BLKz)은 3차원 구조로 제조될 수 있다. 메모리 블록들(BLK1~BLKz)이 3차원 구조로 제조되면, 각 메모리 블록에 포함되는 메모리 셀들의 수가 증가한다.
제2 메모리 블록들(BLKn+1~BLKz)에 기입된 데이터를 갱신할 때에, 이전 데이터를 읽기 불가능하게 제거하기 위하여 이전 데이터를 저장하는 메모리 블록에 대해 소거 동작이 수행될 수 있다. 이러한 방식은 각 메모리 블록에 포함된 메모리 셀들에 소거 스트레스를 인가할 수 있다.
소거 스트레스가 누적되면, 각 메모리 블록의 수명이 다할 수 있다. 특히 3차원 구조로 인해 각 메모리 블록의 메모리 셀들의 수가 증가하면서, 소거 스트레스로 인해 소실되는 저장 용량이 증가하고 있다.
본 발명의 실시 예들에 따르면, 제2 메모리 블록들(BLKn+1~BLKz)에 기입된 이전 데이터를 읽기 불가능하게 제거하기 위하여, 소거 동작 대신에 제거 쓰기 동작이 수행된다. 따라서, 소거 스트레스가 감소하고, 불휘발성 메모리 장치(110) 및 스토리지 장치(100)의 수명이 연장된다.
상술된 내용은 본 발명을 실시하기 위한 구체적인 실시 예들이다. 본 발명은 상술된 실시 예들뿐만 아니라, 단순하게 설계 변경되거나 용이하게 변경할 수 있는 실시 예들 또한 포함할 것이다. 또한, 본 발명은 실시 예들을 이용하여 용이하게 변형하여 실시할 수 있는 기술들도 포함될 것이다. 따라서, 본 발명의 범위는 상술된 실시 예들에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 할 것이다.
10: 컴퓨팅 장치
20: 호스트 장치
100: 스토리지 장치
110: 불휘발성 메모리 장치
BLK1~BLKn: 제1 메모리 블록들
BLKn+1~BLKz: 제2 메모리 블록들
120: 제어기

Claims (10)

  1. 메모리 블록들을 포함하고, 상기 메모리 블록들 각각은 메모리 셀들을 포함하는 불휘발성 메모리 장치; 그리고
    외부의 호스트 장치로부터 제1 쓰기 요청을 수신하고, 그리고 상기 제1 쓰기 요청에 따라 상기 불휘발성 메모리 장치에 제1 제거(sanitize) 명령을 전달하고 그리고 상기 제1 쓰기 요청과 연관된 제1 쓰기 데이터 및 제1 쓰기 명령을 상기 불휘발성 메모리 장치에 전달하도록 구성되는 제어기를 포함하고,
    상기 제1 제거 명령에 응답하여, 상기 불휘발성 메모리 장치는 상기 메모리 블록들 중 제1 메모리 블록의 제1 메모리 셀들에 기입된 제1 데이터를 제거하도록 구성되고,
    상기 제1 쓰기 명령에 응답하여, 상기 불휘발성 메모리 장치는 상기 제1 메모리 블록의 제2 메모리 셀들에 상기 제1 쓰기 데이터를 기입하도록 더 구성되는 스토리지 장치.
  2. 제1항에 있어서,
    상기 제1 메모리 셀들에 기입되는 데이터에 따라 상기 제1 메모리 셀들의 문턱 전압들은 적어도 네 개의 문턱 전압 범위들에 분산되고,
    상기 제1 제거 명령에 응답하여, 상기 불휘발성 메모리 장치는 상기 제1 메모리 셀들에 대해 제거 쓰기 동작여 상기 제1 데이터를 제거하고,
    상기 제거 쓰기 동작은 상기 제1 메모리 셀들 중에서 상기 적어도 네 개의 문턱 전압 범위들 중 적어도 하나의 문턱 전압 범위에 대응하는 메모리 셀들의 문턱 전압들을 높이는 것을 포함하는 스토리지 장치.
  3. 제1항에 있어서,
    상기 제1 메모리 셀들에 기입되는 데이터에 따라 상기 제1 메모리 셀들의 문턱 전압들은 적어도 네 개의 문턱 전압 범위들에 분산되고,
    상기 제1 제거 명령에 응답하여, 상기 불휘발성 메모리 장치는 상기 제1 메모리 셀들에 대해 제거 쓰기 동작을 수행하고,
    상기 제거 쓰기 동작은 상기 제1 메모리 셀들의 문턱 전압들을 상기 적어도 네 개의 문턱 전압 범위들 중 가장 높은 문턱 전압 범위로 높이는 것을 포함하는 스토리지 장치.
  4. 제1항에 있어서,
    상기 제1 제거 명령에 응답하여, 상기 불휘발성 메모리 장치는 상기 제1 메모리 블록의 상기 제1 메모리 셀들에 대해 제거 쓰기 동작을 수행하고,
    상기 제거 쓰기 동작은 프로그램 루프들을 포함하고, 상기 프로그램 루프들 각각은 상기 제1 메모리 셀들에 프로그램 전압을 인가하고 그리고 상기 제1 메모리 셀들에 하나의 검증 전압을 인가하는 것을 포함하는 스토리지 장치.
  5. 제1항에 있어서,
    상기 제1 제거 명령에 응답하여, 상기 불휘발성 메모리 장치는 상기 제1 메모리 블록의 상기 제1 메모리 셀들에 대해 제거 쓰기 동작을 수행하고,
    상기 제거 쓰기 동작은 프로그램 루프들을 포함하고, 상기 프로그램 루프들 각각은 상기 제1 메모리 셀들에 프로그램 전압을 인가하는 것을 포함하고,
    상기 프로그램 루프들에서 상기 제1 메모리 셀들에 검증 전압이 인가되지 않는 스토리지 장치.
  6. 제5항에 있어서,
    상기 프로그램 루프들이 미리 정해진 횟수만큼 수행되면, 상기 불휘발성 메모리 장치는 상기 제거 쓰기 동작을 종료하는 스토리지 장치.
  7. 제1항에 있어서,
    상기 제어기는 상기 외부의 호스트 장치로부터 제2 쓰기 요청을 수신하고,
    상기 제2 쓰기 요청에 응답하여, 상기 제어기는 상기 불휘발성 메모리 장치의 상기 제1 메모리 블록의 상기 제2 메모리 셀들에 대한 제2 제거 명령을 상기 불휘발성 메모리 장치로 전달하고, 그리고
    상기 제1 메모리 블록의 저장 용량이 부족하지 않으면, 상기 제어기는 상기 제1 메모리 블록의 제3 메모리 셀들에서 쓰기 동작이 수행되도록 상기 제2 쓰기 요청과 연관된 제2 쓰기 데이터 및 제2 쓰기 명령을 상기 불휘발성 메모리 장치로 전달하는 스토리지 장치.
  8. 제1항에 있어서,
    상기 제어기는 상기 외부의 호스트 장치로부터 제2 쓰기 요청을 수신하고,
    상기 제2 쓰기 요청에 응답하여, 상기 제어기는 상기 불휘발성 메모리 장치의 상기 제1 메모리 블록의 상기 제2 메모리 셀들에 대한 제2 제거 명령을 상기 불휘발성 메모리 장치로 전달하고,
    상기 제1 메모리 블록의 저장 용량이 부족하면, 상기 제어기는 상기 메모리 블록들 중 제2 메모리 블록의 제3 메모리 셀들에서 쓰기 동작이 수행되도록 상기 제2 쓰기 요청과 연관된 제2 쓰기 데이터 및 제2 쓰기 명령을 상기 불휘발성 메모리 장치로 전달하는 스토리지 장치.
  9. 제1 메모리 블록들 및 제2 메모리 블록들을 포함하는 불휘발성 메모리 장치; 그리고
    상기 제1 메모리 블록들 및 상기 제2 메모리 블록들에 기입된 데이터를 서로 다르게 관리하도록 구성되는 제어기를 포함하고,
    상기 제어기는 상기 제1 메모리 블록들에 기입된 제1 데이터를 갱신할 때에 상기 제1 데이터의 제거 명령 및 제1 갱신 데이터의 쓰기 명령을 상기 불휘발성 메모리 장치에 전송하도록 구성되고,
    상기 제어기는 상기 제2 메모리 블록들에 기입된 제2 데이터를 갱신할 때에 제2 갱신 데이터의 쓰기 명령을 상기 불휘발성 메모리 장치에 전송하도록 더 구성되고,
    상기 제거 명령에 따라, 상기 불휘발성 메모리 장치는 상기 제1 메모리 블록들 중 선택된 제1 메모리 블록의 제1 메모리 셀들의 문턱 전압들을 높이는 스토리지 장치.
  10. 메모리 블록들을 포함하고, 상기 메모리 블록들 각각은 메모리 셀들을 포함하는 불휘발성 메모리 장치; 그리고
    상기 메모리 블록들 중 제1 메모리 블록에 기입된 제1 데이터를 제2 데이터로 갱신할 때, 상기 제1 메모리 블록에 저장된 상기 제1 데이터의 제거 명령을 상기 불휘발성 메모리 장치로 전송하고, 그리고 상기 제1 메모리 블록 또는 상기 메모리 블록들 중 제2 메모리 블록에서 쓰기 동작이 수행되도록 상기 제2 데이터의 쓰기 명령을 상기 불휘발성 메모리 장치로 전송하도록 구성되는 제어기를 포함하고,
    상기 제1 데이터가 제거된 후에, 상기 제거된 제1 데이터는 무효 데이터로서 상기 제1 메모리 블록의 용량을 점유하는 스토리지 장치.
KR1020180048101A 2018-04-25 2018-04-25 불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치 KR102603916B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020180048101A KR102603916B1 (ko) 2018-04-25 2018-04-25 불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치
US16/163,968 US10685713B2 (en) 2018-04-25 2018-10-18 Storage device including nonvolatile memory device and controller
CN201910327392.5A CN110399093B (zh) 2018-04-25 2019-04-23 包括非易失性存储器件和控制器的存储设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180048101A KR102603916B1 (ko) 2018-04-25 2018-04-25 불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치

Publications (2)

Publication Number Publication Date
KR20190124041A true KR20190124041A (ko) 2019-11-04
KR102603916B1 KR102603916B1 (ko) 2023-11-21

Family

ID=68291648

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180048101A KR102603916B1 (ko) 2018-04-25 2018-04-25 불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치

Country Status (3)

Country Link
US (1) US10685713B2 (ko)
KR (1) KR102603916B1 (ko)
CN (1) CN110399093B (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10628076B1 (en) 2018-10-01 2020-04-21 Micron Technology, Inc. Data erasure in memory sub-systems
JP7258697B2 (ja) * 2019-09-02 2023-04-17 キオクシア株式会社 半導体記憶装置
US11287989B2 (en) * 2020-03-24 2022-03-29 Western Digital Technologies, Inc. Dynamic allocation of sub blocks

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040042478A (ko) * 2002-11-14 2004-05-20 삼성전자주식회사 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법
JP2005243230A (ja) * 2004-02-26 2005-09-08 Samsung Electronics Co Ltd マルチレベルフラッシュメモリ装置及びプログラム方法
KR20150059439A (ko) * 2013-11-22 2015-06-01 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것을 포함하는 데이터 처리 시스템
KR20170065969A (ko) * 2015-12-04 2017-06-14 에스케이하이닉스 주식회사 메모리 장치 및 그의 동작방법
KR20180004874A (ko) * 2016-07-04 2018-01-15 삼성전자주식회사 불휘발성 메모리 시스템의 동작 방법 및 불휘발성 메모리 장치의 동작 방법

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2644449C3 (de) * 1976-10-01 1979-03-22 Siemens Ag, 1000 Berlin Und 8000 Muenchen Ansteuerverfahren für einen Anzeigeschirm mit einem zwischen den Zeilen und Spalten einer Leitermatrix befindlichen Medium, insbesondere einer Flüssigkristallschicht
JPH0944467A (ja) * 1995-07-27 1997-02-14 Sharp Corp マイクロコンピュータ
WO2003085677A1 (fr) * 2002-04-05 2003-10-16 Renesas Technology Corp. Memoire non volatile
US20050228938A1 (en) 2004-04-07 2005-10-13 Rajendra Khare Method and system for secure erasure of information in non-volatile memory in an electronic device
US7984084B2 (en) * 2005-08-03 2011-07-19 SanDisk Technologies, Inc. Non-volatile memory with scheduled reclaim operations
JP2007257748A (ja) * 2006-03-24 2007-10-04 Renesas Technology Corp 不揮発性記憶装置
KR101226685B1 (ko) 2007-11-08 2013-01-25 삼성전자주식회사 수직형 반도체 소자 및 그 제조 방법.
KR101691092B1 (ko) 2010-08-26 2016-12-30 삼성전자주식회사 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
US8553466B2 (en) 2010-03-04 2013-10-08 Samsung Electronics Co., Ltd. Non-volatile memory device, erasing method thereof, and memory system including the same
US9536970B2 (en) 2010-03-26 2017-01-03 Samsung Electronics Co., Ltd. Three-dimensional semiconductor memory devices and methods of fabricating the same
KR101682666B1 (ko) 2010-08-11 2016-12-07 삼성전자주식회사 비휘발성 메모리 장치, 그것의 채널 부스팅 방법, 그것의 프로그램 방법 및 그것을 포함하는 메모리 시스템
US9436594B2 (en) * 2011-05-27 2016-09-06 Seagate Technology Llc Write operation with immediate local destruction of old content in non-volatile memory
KR20130008300A (ko) 2011-07-12 2013-01-22 삼성전자주식회사 오버 프로그램을 이용하여 소거 동작을 수행하는 플래시 메모리 장치 및 그 동작방법
KR101832934B1 (ko) 2012-01-27 2018-02-28 삼성전자주식회사 비휘발성 메모리 장치, 그것을 포함하는 메모리 시스템, 그것의 블록 관리 방법, 프로그램 방법 및 소거 방법
JP2014096122A (ja) 2012-11-12 2014-05-22 Genusion:Kk 不揮発性半導体記憶装置を用いた記憶媒体のファイルの記録方法
JP2015204072A (ja) 2014-04-16 2015-11-16 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
KR102211865B1 (ko) * 2014-05-20 2021-02-04 삼성전자주식회사 불휘발성 메모리 시스템 및 메모리 컨트롤러의 동작 방법
KR102313017B1 (ko) * 2015-08-21 2021-10-18 삼성전자주식회사 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 쓰기를 제어하는 컨트롤러를 포함하는 스토리지 장치 및 스토리지 장치의 동작 방법
JP2017059281A (ja) 2015-09-15 2017-03-23 ソニー株式会社 半導体記憶装置および半導体記憶装置におけるデータ消去方法
KR102377469B1 (ko) * 2015-11-02 2022-03-23 삼성전자주식회사 불휘발성 메모리 장치, 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 동작 방법
KR102637160B1 (ko) * 2016-04-14 2024-02-19 삼성전자주식회사 불휘발성 메모리 장치 및 컨트롤러를 포함하는 스토리지 장치 및 스토리지 장치의 동작 방법
US10445008B2 (en) * 2017-09-15 2019-10-15 Macronix International Co., Ltd. Data management method for memory and memory apparatus

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040042478A (ko) * 2002-11-14 2004-05-20 삼성전자주식회사 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법
JP2005243230A (ja) * 2004-02-26 2005-09-08 Samsung Electronics Co Ltd マルチレベルフラッシュメモリ装置及びプログラム方法
KR20150059439A (ko) * 2013-11-22 2015-06-01 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것을 포함하는 데이터 처리 시스템
KR20170065969A (ko) * 2015-12-04 2017-06-14 에스케이하이닉스 주식회사 메모리 장치 및 그의 동작방법
KR20180004874A (ko) * 2016-07-04 2018-01-15 삼성전자주식회사 불휘발성 메모리 시스템의 동작 방법 및 불휘발성 메모리 장치의 동작 방법

Also Published As

Publication number Publication date
CN110399093B (zh) 2024-03-26
CN110399093A (zh) 2019-11-01
US10685713B2 (en) 2020-06-16
KR102603916B1 (ko) 2023-11-21
US20190333586A1 (en) 2019-10-31

Similar Documents

Publication Publication Date Title
CN107015917B (zh) 储存装置和其读取回收方法
KR102128406B1 (ko) 스토리지 장치 및 스토리지 장치의 동작 방법
CN102592668B (zh) 非易失性存储设备和系统及编程非易失性存储设备的方法
JP6538496B2 (ja) メモリシステム
KR102083547B1 (ko) 플래시 메모리와 메모리 컨트롤러를 포함하는 데이터 저장 장치 및 그것의 배드 페이지 관리 방법
KR102470606B1 (ko) 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 스토리지 장치
KR20180027710A (ko) 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 액세스 방법
TW200846907A (en) Flash storage partial page caching
US11500562B2 (en) Memory system, memory controller, and operation method thereof utilizing at least first and second operational modes
KR20170101000A (ko) 메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템
KR102267046B1 (ko) 스토리지 장치 및 배드 블록 지정 방법
KR20160050393A (ko) 메모리 장치, 메모리 시스템, 상기 메모리 장치의 동작 방법 및 상기 메모리 시스템의 동작 방법
KR20090004709A (ko) 전하 축적층과 제어 게이트를 갖는 메모리 셀을 구비한반도체 기억 장치 및 메모리 시스템
US9589640B2 (en) Data storage device including nonvolatile memory device and operating method thereof
CN112667524A (zh) 存储装置及其垃圾收集方法
KR102603916B1 (ko) 불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치
KR20210026431A (ko) 메모리 시스템, 메모리 컨트롤러 및 동작 방법
KR20190048310A (ko) 메모리 컨트롤러의 동작 방법 및 저장 장치의 동작 방법
KR20210057355A (ko) 메모리 장치, 메모리 컨트롤러, 메모리 시스템 및 그 동작 방법
CN111273858A (zh) 开放通道固态驱动器以及非易失性存储器系统
US11315650B2 (en) Memory system, memory controller, and method of operating memory system
US8203886B2 (en) Memory device reference cell programming method and apparatus
CN116403629A (zh) 存储装置
KR20220138961A (ko) 메모리 장치 및 메모리 장치의 동작 방법
KR20220079264A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant