KR102422478B1 - 불휘발성 메모리 장치의 독출 방법 - Google Patents

불휘발성 메모리 장치의 독출 방법 Download PDF

Info

Publication number
KR102422478B1
KR102422478B1 KR1020160056818A KR20160056818A KR102422478B1 KR 102422478 B1 KR102422478 B1 KR 102422478B1 KR 1020160056818 A KR1020160056818 A KR 1020160056818A KR 20160056818 A KR20160056818 A KR 20160056818A KR 102422478 B1 KR102422478 B1 KR 102422478B1
Authority
KR
South Korea
Prior art keywords
flag
data
read
sensing
count value
Prior art date
Application number
KR1020160056818A
Other languages
English (en)
Other versions
KR20170126595A (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 KR1020160056818A priority Critical patent/KR102422478B1/ko
Priority to US15/435,389 priority patent/US10108370B2/en
Priority to CN201710320596.7A priority patent/CN107403636B/zh
Publication of KR20170126595A publication Critical patent/KR20170126595A/ko
Application granted granted Critical
Publication of KR102422478B1 publication Critical patent/KR102422478B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/18Bit line organisation; Bit line lay-out
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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
    • 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/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3427Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
    • 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
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/12Bit line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, equalising circuits, for bit lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/08Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/14Word line organisation; Word line lay-out
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Read Only Memory (AREA)

Abstract

불휘발성 메모리 장치의 독출 방법에서, 복수의 워드 라인들 중의 선택 워드 라인에 제1 독출 전압을 인가한 후, 복수의 비트 라인들을 센싱하여 선택 워드 라인에 연결되는 선택 페이지에 저장된 데이터 및 플래그에 상응하는 제1 센싱 데이터 및 제1 센싱 플래그를 생성하고, 선택 워드 라인에 제2 독출 전압을 인가한 후, 복수의 비트 라인들을 센싱하여 선택 페이지에 저장된 데이터 및 플래그에 상응하는 제2 센싱 데이터 및 제2 센싱 플래그를 생성하고, 제1 센싱 데이터와 제2 센싱 데이터에 대해 산술 연산을 수행하여 판정 데이터를 생성하고, 판정 데이터에 포함되는 제1 논리 레벨을 갖는 비트들의 개수를 카운트하여 카운트값을 생성하고, 제1 센싱 플래그와 제2 센싱 플래그 중의 하나에 대해 에러 체크 및 정정 동작을 수행하여 독출 플래그를 생성하고, 카운트값 및 독출 플래그에 기초하여 시프트 전압을 결정하고, 선택 워드 라인에 제1 독출 전압이 시프트 전압만큼 시프트된 전압에 상응하는 제3 독출 전압을 인가한 후, 복수의 비트 라인들을 센싱하여 선택 페이지에 저장된 데이터에 상응하는 독출 데이터를 생성한다.

Description

불휘발성 메모리 장치의 독출 방법 {READ METHOD OF NONVOLATILE MEMORY DEVICES}
본 발명은 불휘발성 메모리 장치에 관한 것으로, 보다 상세하게는 불휘발성 메모리 장치의 독출 방법에 관한 것이다.
반도체 메모리 장치는 크게 휘발성 반도체 메모리 장치(Volatile semiconductor memory device)와 불휘발성 반도체 메모리 장치(Nonvolatile semiconductor memory device)로 구분될 수 있다. 휘발성 반도체 메모리 장치는 읽고 쓰는 속도가 빠르지만 전원 공급이 끊기면 저장된 내용이 사라져 버리는 단점이 있다. 반면에 불휘발성 반도체 메모리 장치는 전원 공급이 중단되더라도 그 내용을 보존한다. 그러므로, 불휘발성 반도체 메모리 장치는 전원이 공급되었는지의 여부에 관계없이 보존되어야 할 내용을 기억시키는 데 쓰인다.
불휘발성 반도체 메모리 장치로는 마스크 롬(Mask read-only memory, MROM), 프로그램 가능한 롬(Programmable read-only memory, PROM), 소거 및 프로그램 가능한 롬(Erasable programmable read-only memory, EPROM), 전기적으로 소거 및 프로그램 가능한 롬(Electrically erasable programmable read-only memory, EEPROM) 등이 있다.
불휘발성 메모리 장치의 대표적인 예로 플래시 메모리 장치가 있다. 플래시 메모리 장치는 컴퓨터, 휴대폰, PDA, 디지털카메라, 캠코더, 보이스 리코더, MP3 플레이어, 개인용 휴대 단말기(PDA), 휴대용 컴퓨터(Handheld PC), 게임기, 팩스, 스캐너, 프린터 등과 같은 전자 기기들의 음성 및 영상 데이터 저장 매체로서 널리 사용되고 있다.
최근 들어 메모리 장치에 대한 고집적 요구가 증가함에 따라, 메모리 셀의 사이즈가 점점 감소하고 있다.
그러나 메모리 셀의 사이즈가 감소하는 경우 셀들 간의 방해(disturbance)로 인해 독출 에러가 발생할 가능성이 증가한다는 문제점이 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 일 목적은 동작 신뢰성을 증가시킬 수 있는 불휘발성 메모리 장치의 독출 방법을 제공하는 것이다.
본 발명의 다른 목적은 상기 독출 방법을 구현하는 불휘발성 메모리 장치를 제공하는 것이다.
상술한 본 발명의 일 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 복수의 워드 라인들 및 복수의 비트 라인들에 연결되고, 각각이 데이터를 저장하는 데이터 영역 및 상기 데이터 영역에 대한 정보에 상응하는 플래그를 저장하는 플래그 영역을 포함하는 복수의 페이지들을 포함하는 불휘발성 메모리 장치의 독출 방법에서, 상기 복수의 워드 라인들 중의 선택 워드 라인에 제1 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 워드 라인에 연결되는 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 상응하는 제1 센싱 데이터 및 제1 센싱 플래그를 생성하고, 상기 선택 워드 라인에 제2 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 상응하는 제2 센싱 데이터 및 제2 센싱 플래그를 생성하고, 상기 제1 센싱 데이터와 상기 제2 센싱 데이터에 대해 산술 연산을 수행하여 판정 데이터를 생성하고, 상기 판정 데이터에 포함되는 제1 논리 레벨을 갖는 비트들의 개수를 카운트하여 카운트값을 생성하고, 상기 제1 센싱 플래그와 상기 제2 센싱 플래그 중의 하나에 대해 에러 체크 및 정정 동작을 수행하여 독출 플래그를 생성하고, 상기 카운트값 및 상기 독출 플래그에 기초하여 시프트 전압을 결정하고, 상기 선택 워드 라인에 상기 제1 독출 전압이 상기 시프트 전압만큼 시프트된 전압에 상응하는 제3 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 페이지에 저장된 상기 데이터에 상응하는 독출 데이터를 생성한다.
일 실시예에 있어서, 상기 판정 데이터에 포함되는 제1 논리 레벨을 갖는 비트들의 개수를 카운트하여 상기 카운트값을 생성하는 동작과 상기 제1 센싱 플래그 및 상기 제2 센싱 플래그 중의 하나에 대해 에러 체크 및 정정 동작을 수행하여 상기 독출 플래그를 생성하는 동작은 동시에 수행될 수 있다.
일 실시예에 있어서, 상기 제1 센싱 데이터 및 상기 제1 센싱 플래그는 각각 제1 데이터 래치 및 제1 플래그 래치에 동시에 래치되고, 상기 제2 센싱 데이터 및 상기 제2 센싱 플래그는 각각 제2 데이터 래치 및 제2 플래그 래치에 동시에 래치되고, 상기 제1 데이터 래치에 래치된 상기 제1 센싱 데이터와 상기 제2 데이터 래치에 래치된 상기 제2 센싱 데이터에 대해 상기 산술 연산을 수행하여 생성되는 상기 판정 데이터가 데이터 캐시 래치에 래치되는 동작과, 상기 제1 플래그 래치에 래치된 상기 제1 센싱 플래그와 상기 제2 플래그 래치에 래치된 상기 제2 센싱 플래그 중의 하나가 플래그 캐시 래치에 래치되는 동작은 동시에 수행될 수 있다.
일 실시예에 있어서, 상기 카운트값 및 상기 독출 플래그에 기초하여 상기 시프트 전압을 결정하는 단계는, 상기 독출 플래그에 기초하여 상기 카운트값을 보정하여 보정된 카운트값을 생성하는 단계, 상기 보정된 카운트값이 증가할수록 상기 시프트 전압을 증가시키는 단계, 및 상기 보정된 카운트값이 감소할수록 상기 시프트 전압을 감소시키는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 플래그는 상기 데이터 영역에 대해 프로그램 동작이 수행된 때의 온도를 포함할 수 있다.
상기 카운트값 및 상기 독출 플래그에 기초하여 상기 시프트 전압을 결정하는 단계는, 상기 독출 플래그에 포함되는 상기 온도가 상대적으로 높은 경우 상기 카운트값을 감소시켜 보정된 카운트값을 생성하는 단계, 상기 독출 플래그에 포함되는 상기 온도가 상대적으로 낮은 경우 상기 카운트값을 증가시켜 상기 보정된 카운트값을 생성하는 단계, 상기 보정된 카운트값이 증가할수록 상기 시프트 전압을 증가시키는 단계, 및 상기 보정된 카운트값이 감소할수록 상기 시프트 전압을 감소시키는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 플래그는 상기 데이터 영역의 프로그램/소거 사이클(Program/Erase cycle; P/E cycle) 횟수를 포함할 수 있다.
상기 카운트값 및 상기 독출 플래그에 기초하여 상기 시프트 전압을 결정하는 단계는, 상기 독출 플래그에 포함되는 상기 프로그램/소거 사이클 횟수가 상대적으로 많은 경우 상기 카운트값을 감소시켜 보정된 카운트값을 생성하는 단계, 상기 독출 플래그에 포함되는 상기 프로그램/소거 사이클 횟수가 상대적으로 적은 경우 상기 카운트값을 증가시켜 상기 보정된 카운트값을 생성하는 단계, 상기 보정된 카운트값이 증가할수록 상기 시프트 전압을 증가시키는 단계, 및 상기 보정된 카운트값이 감소할수록 상기 시프트 전압을 감소시키는 단계를 포함할 수 있다.
일 실시예에 있어서, 상기 산술 연산은 배타적 논리합 연산에 상응할 수 있다.
일 실시예에 있어서, 상기 복수의 페이지들 각각에 포함되는 상기 데이터 영역은 서로 독립적으로 프로그램 동작이 수행되는 복수의 섹터들을 포함하고, 상기 복수의 페이지들 각각에 포함되는 상기 플래그 영역은 복수의 서브 플래그 영역들을 포함하고, 상기 복수의 서브 플래그 영역들 각각은 상응하는 데이터 영역에 포함되는 상기 복수의 섹터들 각각에 프로그램 동작이 수행되었는지 여부를 나타내는 상태 정보를 저장하고, 상기 플래그 영역에 저장되는 상기 플래그는 상기 플래그 영역에 포함되는 상기 복수의 서브 플래그 영역들에 저장된 상기 상태 정보들을 포함할 수 있다.
상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터에 저장된 논리 하이 레벨을 갖는 비트들의 개수 및 논리 로우 레벨을 갖는 비트들의 개수는 서로 동일할 수 있다.
상기 카운트값 및 상기 독출 플래그에 기초하여 상기 시프트 전압을 결정하는 단계는, 상기 독출 플래그에 포함되는 상기 상태 정보들에 기초하여 상기 데이터 영역에 포함되는 상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수를 결정하는 단계, 상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수에 기초하여 상기 카운트값을 보정하여 보정된 카운트값을 생성하는 단계, 및 상기 보정된 카운트값에 기초하여 상기 시프트 전압을 결정하는 단계를 포함할 수 있다.
상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수에 기초하여 상기 카운트값을 보정하여 상기 보정된 카운트값을 생성하는 단계는, 상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수가 상대적으로 많은 경우, 상기 카운트값을 증가시켜 상기 보정된 카운트값을 생성하는 단계, 및 상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수가 상대적으로 적은 경우, 상기 카운트값을 감소시켜 상기 보정된 카운트값을 생성하는 단계를 포함하고, 상기 보정된 카운트값에 기초하여 상기 시프트 전압을 결정하는 단계는, 상기 보정된 카운트값이 증가할수록 상기 시프트 전압을 증가시키는 단계, 및 상기 보정된 카운트값이 감소할수록 상기 시프트 전압을 감소시키는 단계를 포함할 수 있다.
상술한 본 발명의 일 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 복수의 워드 라인들 및 복수의 비트 라인들에 연결되고, 각각이 데이터를 저장하는 데이터 영역 및 상기 데이터 영역에 대한 정보에 상응하는 플래그를 저장하는 플래그 영역을 포함하는 복수의 페이지들을 포함하는 불휘발성 메모리 장치의 독출 방법에서, 상기 복수의 워드 라인들 중의 선택 워드 라인에 제1 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 워드 라인에 연결되는 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 상응하는 제1 센싱 데이터 및 제1 센싱 플래그를 생성하고, 상기 선택 워드 라인에 제2 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 페이지에 저장된 상기 데이터에 상응하는 제2 센싱 데이터를 생성하는 동작 및 상기 제1 센싱 플래그에 대해 에러 체크 및 정정 동작을 수행하여 독출 플래그를 생성하는 동작을 동시에 수행하고, 상기 제1 센싱 데이터와 상기 제2 센싱 데이터에 대해 산술 연산을 수행하여 판정 데이터를 생성하고, 상기 판정 데이터에 포함되는 제1 논리 레벨을 갖는 비트들의 개수를 카운트하여 카운트값을 생성하고, 상기 카운트값 및 상기 독출 플래그에 기초하여 시프트 전압을 결정하고, 상기 선택 워드 라인에 상기 제1 독출 전압이 상기 시프트 전압만큼 시프트된 전압에 상응하는 제3 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 페이지에 저장된 상기 데이터에 상응하는 독출 데이터를 생성한다.
일 실시예에 있어서, 상기 제1 센싱 데이터 및 상기 제1 센싱 플래그는 각각 데이터 래치 및 플래그 래치에 동시에 래치되고, 상기 데이터 래치에 래치된 상기 제1 센싱 데이터 및 상기 플래그 래치에 래치된 상기 제1 센싱 플래그는 각각 데이터 캐시 래치 및 플래그 캐시 래치에 동시에 래치되고, 상기 제2 센싱 데이터를 상기 데이터 래치에 래치하는 동작과 상기 플래그 캐시 래치에 래치된 상기 제1 센싱 플래그에 대해 에러 체크 및 정정 동작을 수행하여 상기 독출 플래그를 생성하는 동작은 동시에 수행될 수 있다.
상기 데이터 래치에 래치된 상기 제2 센싱 데이터와 상기 데이터 캐시 래치에 래치된 상기 제1 센싱 데이터에 대해 상기 산술 연산을 수행하여 생성되는 상기 판정 데이터는 상기 데이터 캐시 래치에 래치될 수 있다.
일 실시예에 있어서, 상기 복수의 페이지들 각각에 포함되는 상기 데이터 영역은 서로 독립적으로 프로그램 동작이 수행되는 복수의 섹터들을 포함하고, 상기 복수의 페이지들 각각에 포함되는 상기 플래그 영역은 복수의 서브 플래그 영역들을 포함하고, 상기 복수의 서브 플래그 영역들 각각은 상응하는 데이터 영역에 포함되는 상기 복수의 섹터들 각각에 프로그램 동작이 수행되었는지 여부를 나타내는 상태 정보를 저장하고, 상기 플래그 영역에 저장되는 상기 플래그는 상기 플래그 영역에 포함되는 상기 복수의 서브 플래그 영역들에 저장된 상기 상태 정보들을 포함할 수 있다.
상기 카운트값 및 상기 독출 플래그에 기초하여 상기 시프트 전압을 결정하는 단계는, 상기 독출 플래그에 포함되는 상기 상태 정보들에 기초하여 상기 데이터 영역에 포함되는 상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수를 결정하는 단계, 상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수에 기초하여 상기 카운트값을 보정하여 보정된 카운트값을 생성하는 단계, 및 상기 보정된 카운트값에 기초하여 상기 시프트 전압을 결정하는 단계를 포함할 수 있다.
상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수에 기초하여 상기 카운트값을 보정하여 상기 보정된 카운트값을 생성하는 단계는, 상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수가 상대적으로 많은 경우, 상기 카운트값을 증가시켜 상기 보정된 카운트값을 생성하는 단계, 및 상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수가 상대적으로 적은 경우, 상기 카운트값을 감소시켜 상기 보정된 카운트값을 생성하는 단계를 포함하고, 상기 보정된 카운트값에 기초하여 상기 시프트 전압을 결정하는 단계는, 상기 보정된 카운트값이 증가할수록 상기 시프트 전압을 증가시키는 단계, 및 상기 보정된 카운트값이 감소할수록 상기 시프트 전압을 감소시키는 단계를 포함할 수 있다.
상술한 본 발명의 일 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 불휘발성 메모리 장치는 메모리 셀 어레이 및 주변 회로를 포함한다. 상기 메모리 셀 어레이는 복수의 워드 라인들 및 복수의 비트 라인들에 연결되고, 각각이 데이터를 저장하는 데이터 영역 및 상기 데이터 영역에 대한 정보에 상응하는 플래그를 저장하는 플래그 영역을 포함하는 복수의 페이지들을 포함한다. 상기 주변 회로는 상기 복수의 워드 라인들 중의 선택 워드 라인에 제1 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 워드 라인에 연결되는 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 상응하는 제1 센싱 데이터 및 제1 센싱 플래그를 생성하고, 상기 선택 워드 라인에 제2 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 상응하는 제2 센싱 데이터 및 제2 센싱 플래그를 생성하고, 상기 제1 센싱 데이터와 상기 제2 센싱 데이터에 대해 산술 연산을 수행하여 판정 데이터를 생성하고, 상기 판정 데이터에 포함되는 제1 논리 레벨을 갖는 비트들의 개수를 카운트하여 카운트값을 생성하고, 상기 제1 센싱 플래그와 상기 제2 센싱 플래그 중의 하나에 대해 에러 체크 및 정정 동작을 수행하여 독출 플래그를 생성하고, 상기 카운트값 및 상기 독출 플래그에 기초하여 시프트 전압을 결정하고, 상기 선택 워드 라인에 상기 제1 독출 전압이 상기 시프트 전압만큼 시프트된 전압에 상응하는 제3 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 페이지에 저장된 상기 데이터에 상응하는 독출 데이터를 생성한다.
본 발명의 실시예들에 따른 불휘발성 메모리 장치의 독출 방법에 따르면, 독출 동작의 속도를 감소시키지 않고도 독출 동작의 신뢰성을 효과적으로 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 불휘발성 메모리 장치를 나타내는 블록도이다.
도 2 및 3은 도 1의 불휘발성 메모리 장치에 포함되는 메모리 셀 어레이의 예들을 나타내는 회로도들이다.
도 4는 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 독출 방법을 나타내는 순서도이다.
도 5는 도 1의 불휘발성 메모리 장치에 포함되는 데이터 래치 회로 및 플래그 래치 회로의 일 예를 나타내는 블록도이다.
도 6은 도 1의 메모리 셀 어레이에 포함되는 메모리 셀들의 문턱 전압 산포의 일 예를 나타내는 도면이다.
도 7 내지 9는 도 1의 메모리 셀 어레이에 포함되는 페이지의 일 예를 나타내는 도면들이다.
도 10은 도 1의 메모리 셀 어레이에 포함되는 복수의 페이지들 각각이 서로 독립적으로 프로그램 동작이 수행되는 복수의 섹터들을 포함하는 경우에 메모리 셀들의 문턱 전압 산포의 일 예를 나타내는 도면이다.
도 11은 도 4에 도시된 불휘발성 메모리 장치의 독출 방법의 시간에 따른 진행을 설명하기 위한 도면이다.
도 12는 본 발명의 다른 실시예에 따른 불휘발성 메모리 장치의 독출 방법을 나타내는 순서도이다.
도 13은 도 1의 불휘발성 메모리 장치에 포함되는 데이터 래치 회로 및 플래그 래치 회로의 다른 예를 나타내는 블록도이다.
도 14는 도 12에 도시된 불휘발성 메모리 장치의 독출 방법의 시간에 따른 진행을 설명하기 위한 도면이다.
도 15는 본 발명의 일 실시예에 따른 메모리 시스템을 나타내는 블록도이다.
도 16은 본 발명의 일 실시예에 따른 메모리 카드를 나타내는 블록도이다.
도 17은 본 발명의 일 실시예에 따른 솔리드 스테이트 드라이브 시스템을 나타내는 블록도이다.
도 18은 본 발명의 일 실시예에 따른 모바일 시스템을 나타내는 블록도이다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일 실시예에 따른 불휘발성 메모리 장치를 나타내는 블록도이다.
도 1을 참조하면, 불휘발성 메모리 장치(10)는 메모리 셀 어레이(100), 데이터 센스 앰프(210), 플래그 센스 앰프(220), 데이터 래치 회로(310), 플래그 래치 회로(320), 카운터(410), 에러 체크 및 정정(Error Check and Correction; ECC) 회로(420), 계산기(510), 레지스터(520), 제어 회로(610), 전압 생성기(620), 및 로우 디코더(630)를 포함할 수 있다.
메모리 셀 어레이(100)는 스트링 선택 라인(SSL), 복수의 워드 라인들(WL1~WLn) 및 접지 선택 라인(GSL)을 통해 로우 디코더(630)와 연결될 수 있다. 또한, 메모리 셀 어레이(100)는 복수의 비트 라인들(BL1~BLm)을 통해 데이터 센스 앰프(210) 및 플래그 센스 앰프(220)와 연결될 수 있다. 여기서, n 및 m은 각각 양의 정수를 나타낸다.
메모리 셀 어레이(100)는 복수의 워드 라인들(WL1~WLn) 및 복수의 비트 라인들(BL1~BLm)에 연결되는 복수의 메모리 셀들을 포함할 수 있다. 동일한 워드 라인에 연결되는 메모리 셀들은 하나의 페이지를 형성할 수 있다.
메모리 셀 어레이(100)는 데이터를 저장하는 데이터 영역(110) 및 데이터 영역(110)에 대한 정보에 상응하는 플래그를 저장하는 플래그 영역(120)으로 구분될 수 있다. 따라서 메모리 셀 어레이(100)에 포함되는 복수의 페이지들 각각 역시 데이터를 저장하는 데이터 영역(110) 및 데이터 영역(110)에 대한 정보에 상응하는 플래그를 저장하는 플래그 영역(120)으로 구분될 수 있다.
실시예에 따라서, 데이터 영역(110)과 플래그 영역(120)은 물리적으로 분리지 않고, 동일한 구조로 형성되는 상기 복수의 메모리 셀들 중의 일부는 데이터 영역(110)으로 사용되고 나머지 일부는 플래그 영역(120)으로 사용될 수 있다.
일 실시예에 있어서, 메모리 셀 어레이(100)는 기판 상에 삼차원 구조(또는 수직 구조)로 형성되는 삼차원(three dimensional) 메모리 셀 어레이일 수 있다. 이 경우, 메모리 셀 어레이(100)는 서로 적층되어 형성되는 복수의 메모리 셀들을 포함하는 수직 메모리 셀 스트링들을 포함할 수 있다. 삼차원 메모리 셀 어레이에 대한 자세한 설명은 본 명세서에 참고 문헌으로 결합된 미국 등록 번호 7,679,133; 8,553,466; 8,654,587; 8,559,235 및 미국 공개 번호 2011/0233648에 기술되어 있다.
다른 실시예에 있어서, 메모리 셀 어레이(100)는 기판 상에 이차원 구조(또는 수평 구조)로 형성되는 이차원(two dimensional) 메모리 셀 어레이일 수 있다.
도 2 및 3은 도 1의 불휘발성 메모리 장치에 포함되는 메모리 셀 어레이의 예들을 나타내는 회로도들이다.
도 2에 도시된 메모리 셀 어레이(100a)는 기판 상에 삼차원 구조로 형성되는 삼차원 메모리 셀 어레이를 나타낸다. 예를 들어, 메모리 셀 어레이(100a)에 포함되는 복수의 메모리 셀 스트링들은 상기 기판과 수직한 방향으로 형성될 수 있다.
도 2를 참조하면, 메모리 셀 어레이(100a)는 비트 라인들(BL1, BL2, BL3)과 공통 소스 라인(CSL) 사이에 연결되는 복수의 메모리 셀 스트링들(NS11~NS33)을 포함할 수 있다. 복수의 메모리 셀 스트링들(NS11~NS33) 각각은 스트링 선택 트랜지스터(SST), 복수의 메모리 셀들(MC1, MC2, ..., MC8) 및 접지 선택 트랜지스터(GST)를 포함할 수 있다.
도 2에는 복수의 메모리 셀 스트링들(NS11~NS33) 각각이 8개의 메모리 셀들(MC1, MC2, ..., MC8)을 포함하는 것으로 도시되어 있으나, 본 발명은 이에 한정되지 않는다.
스트링 선택 트랜지스터(SST)는 상응하는 스트링 선택 라인(SSL1, SSL2, SSL3)에 연결될 수 있다. 복수의 메모리 셀들(MC1, MC2, ..., MC8)은 각각 상응하는 워드 라인(WL1, WL2, ..., WL8)에 연결될 수 있다. 접지 선택 트랜지스터(GST)는 상응하는 접지 선택 라인(GSL1, GSL2, GSL3)에 연결될 수 있다. 스트링 선택 트랜지스터(SST)는 상응하는 비트 라인(BL1, BL2, BL3)에 연결되고, 접지 선택 트랜지스터(GST)는 공통 소스 라인(CSL)에 연결될 수 있다.
동일 높이의 워드 라인(예를 들면, WL1)은 공통으로 연결되고, 접지 선택 라인(GSL1, GSL2, GSL3) 및 스트링 선택 라인(SSL1, SSL2, SSL3)은 각각 분리될 수 있다.
도 2에는 메모리 셀 어레이(100a)가 여덟 개의 워드 라인들(WL1, WL2, ..., WL8) 및 세 개의 비트 라인들(BL1, BL2, BL3)에 연결되는 것으로 도시되어 있으나, 본 발명은 이에 한정되지 않는다.
도 3에 도시된 메모리 셀 어레이(b00b)는 기판에 이차원 구조로 형성되는 이차원 메모리 셀 어레이를 나타낸다. 예를 들어, 메모리 셀 어레이(100b)에 포함되는 복수의 메모리 셀 스트링들은 상기 기판과 수평한 방향으로 형성될 수 있다.
도 3을 참조하면, 메모리 셀 어레이(100b)는 복수의 메모리 셀 스트링들(NS1, NS2, NS3, ..., NSm)을 포함할 수 있다.
복수의 메모리 셀 스트링들(NS1, NS2, NS3, ..., NSm) 각각은 직렬로 연결된 스트링 선택 트랜지스터(SST), 복수의 메모리 셀들(MC) 및 접지 선택 트랜지스터(GST)를 포함할 수 있다.
복수의 메모리 셀 스트링들(NS1, NS2, NS3, ..., NSm)에 포함되는 스트링 선택 트랜지스터(SST)는 스트링 선택 라인(SSL)에 공통으로 연결될 수 있다. 복수의 메모리 셀 스트링들(NS1, NS2, NS3, ..., NSm)에 포함되는 복수의 메모리 셀들(MC) 중에서 동일한 로우에 형성되는 메모리 셀들은 상응하는 워드 라인(WL1, WL2, WL3, WL4, ..., WL(n-1), WLn)에 공통으로 연결될 수 있다. 복수의 메모리 셀 스트링들(NS1, NS2, NS3, ..., NSm)에 포함되는 접지 선택 트랜지스터(GST)는 접지 선택 라인(GSL)에 공통으로 연결될 수 있다.
복수의 메모리 셀 스트링들(NS1, NS2, NS3, ..., NSm)에 포함되는 접지 선택 트랜지스터(GST)는 공통 소스 라인(CSL)에 공통으로 연결될 수 있다.
복수의 메모리 셀 스트링들(NS1, NS2, NS3, ..., NSm)에 포함되는 스트링 선택 트랜지스터(SST)는 상응하는 비트 라인(BL1, BL2, BL3, ..., BLm)에 연결될 수 있다.
다시 도 1을 참조하면, 제어 회로(610)는 불휘발성 메모리 장치(10)의 전반적인 동작을 제어할 수 있다. 예를 들어, 제어 회로(610)는 전압 생성기(620)를 제어하기 위한 제어 신호(CON)를 생성할 수 있다.
로우 디코더(630)는 스트링 선택 라인(SSL), 복수의 워드 라인들(WL1~WLn) 및 접지 선택 라인(GSL)을 통해 메모리 셀 어레이(100)와 연결될 수 있다.
독출 동작 시, 로우 디코더(630)는 복수의 워드 라인들(WL1~WLn) 중의 하나를 선택 워드 라인으로 결정하고, 복수의 워드 라인들(WL1~WLn) 중에서 상기 선택 워드 라인을 제외한 나머지 워드 라인들을 비선택 워드 라인들로 결정할 수 있다.
전압 생성기(620)는 상기 선택 워드 라인에 인가될 독출 전압(VR1, VR2, VR3)을 생성하고, 상기 비선택 워드 라인들에 인가될 독출 패스 전압을 생성할 수 있다. 이 때, 전압 생성기(620)는 제어 회로(610)로부터 제공되는 제어 신호(CON)에 기초하여 독출 전압(VR1, VR2, VR3)의 크기를 가변할 수 있다.
전압 생성기(620)로부터 생성되는 독출 전압(VR1, VR2, VR3)은 로우 디코더(630)를 통해 상기 선택 워드 라인에 인가되고, 전압 생성기(620)로부터 생성되는 상기 독출 패스 전압은 로우 디코더(630)를 통해 상기 비선택 워드 라인들에 인가될 수 있다.
상기 선택 워드 라인에 독출 전압(VR1, VR2, VR3)이 인가되고, 상기 비선택 워드 라인들에 상기 독출 패스 전압이 인가되는 경우, 메모리 셀 어레이(100)에 포함되는 상기 복수의 페이지들 중에서 상기 선택 워드 라인에 연결되는 선택 페이지에 포함되는 메모리 셀들에 저장된 데이터의 논리 레벨에 기초하여 복수의 비트 라인들(BL1~BLm)의 전압 또는 전류가 변하게 된다.
데이터 센스 앰프(210) 및 플래그 센스 앰프(220)는 복수의 비트 라인들(BL1~BLm)을 통해 메모리 셀 어레이(100)의 데이터 영역(110) 및 플래그 영역(120)에 각각 연결될 수 있다.
데이터 센스 앰프(210) 및 플래그 센스 앰프(220)는 복수의 비트 라인들(BL1~BLm)의 전압 또는 전류를 센싱하여 상기 선택 페이지의 데이터 영역(110) 및 플래그 영역(120)에 저장된 상기 데이터 및 상기 플래그에 각각 상응하는 센싱 데이터(SD1, SD2, SD3) 및 센싱 플래그(SF1, SF2, SF3)를 생성할 수 있다.
도 4는 본 발명의 일 실시예에 따른 불휘발성 메모리 장치의 독출 방법을 나타내는 순서도이다.
도 4의 독출 방법은 도 1에 도시된 불휘발성 메모리 장치(10)를 통해 수행될 수 있다.
이하, 도 1 내지 4를 참조하여 불휘발성 메모리 장치(10)의 독출 방법에 대해 상세히 설명한다.
전압 생성기(620)는 제어 회로(610)로부터 제공되는 제어 신호(CON)에 기초하여 제1 독출 전압(VR1) 및 상기 독출 패스 전압을 생성하고, 로우 디코더(630)는 제1 독출 전압(VR1)을 상기 선택 워드 라인에 인가하고 상기 독출 패스 전압을 상기 비선택 워드 라인들에 인가할 수 있다.
제1 독출 전압(VR1)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 데이터 센스 앰프(210) 및 플래그 센스 앰프(220)는 복수의 비트 라인들(BL1~BLm)을 센싱하여 상기 선택 워드 라인에 연결되는 상기 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 각각 상응하는 제1 센싱 데이터(SD1) 및 제1 센싱 플래그(SF1)를 생성할 수 있다(단계 S110).
제1 센싱 데이터(SD1) 및 제1 센싱 플래그(SF1)는 각각 데이터 래치 회로(310), 플래그 래치 회로(320)에 래치될 수 있다.
이후, 전압 생성기(620)는 제어 회로(610)로부터 제공되는 제어 신호(CON)에 기초하여 제1 독출 전압(VR1)과는 다른 제2 독출 전압(VR2) 및 상기 독출 패스 전압을 생성하고, 로우 디코더(630)는 제2 독출 전압(VR2)을 상기 선택 워드 라인에 인가하고 상기 독출 패스 전압을 상기 비선택 워드 라인들에 인가할 수 있다.
일 실시예에 있어서, 제2 독출 전압(VR2)의 크기와 제1 독출 전압(VR1)의 크기의 차이는 제1 독출 전압(VR1)의 크기에 비해 매우 작을 수 있다.
제2 독출 전압(VR2)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 데이터 센스 앰프(210) 및 플래그 센스 앰프(220)는 복수의 비트 라인들(BL1~BLm)을 센싱하여 상기 선택 워드 라인에 연결되는 상기 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 각각 상응하는 제2 센싱 데이터(SD2) 및 제2 센싱 플래그(SF2)를 생성할 수 있다(단계 S120).
제2 센싱 데이터(SD2) 및 제2 센싱 플래그(SF2)는 각각 데이터 래치 회로(310), 플래그 래치 회로(320)에 래치될 수 있다.
이후, 데이터 래치 회로(310)는 제1 센싱 데이터(SD1)와 제2 센싱 데이터(SD2)에 대해 산술 연산을 수행하여 판정 데이터(DD)를 생성하고, 판정 데이터(DD)를 래치할 수 있다(단계 S130).
일 실시예에 있어서, 상기 산술 연산은 배타적 논리합 연산일 수 있다.
한편, 플래그 래치 회로(320)는 제1 센싱 플래그(SF1)와 제2 센싱 플래그(SF2) 중의 하나를 선택하여 래치할 수 있다.
도 5는 도 1의 불휘발성 메모리 장치에 포함되는 데이터 래치 회로 및 플래그 래치 회로의 일 예를 나타내는 블록도이다.
도 5를 참조하면, 데이터 래치 회로(310a)는 제1 데이터 래치(311), 제2 데이터 래치(312), 데이터 캐시 래치(313), 및 배타적 논리합 게이트(314)를 포함하고, 플래그 래치 회로(320a)는 제1 플래그 래치(321), 제2 플래그 래치(322), 및 플래그 캐시 래치(323)를 포함할 수 있다.
제1 독출 전압(VR1)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 데이터 센스 앰프(210) 및 플래그 센스 앰프(220)로부터 제공되는 제1 센싱 데이터(SD1) 및 제1 센싱 플래그(SF1)는 각각 데이터 래치 회로(310a)의 제1 데이터 래치(311) 및 플래그 래치 회로(320a)의 제1 플래그 래치(321)에 동시에 래치될 수 있다.
또한, 제2 독출 전압(VR2)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 데이터 센스 앰프(210) 및 플래그 센스 앰프(220)로부터 제공되는 제2 센싱 데이터(SD2) 및 제2 센싱 플래그(SF2)는 각각 데이터 래치 회로(310a)의 제2 데이터 래치(312) 및 플래그 래치 회로(320a)의 제2 플래그 래치(322)에 동시에 래치될 수 있다.
이후, 배타적 논리합 게이트(314)는 제1 데이터 래치(311)에 래치된 제1 센싱 데이터(SD1)와 제2 데이터 래치(312)에 래치된 제2 센싱 데이터(SD2)에 대해 배타적 논리합 연산을 수행하여 판정 데이터(DD)를 생성할 수 있다. 판정 데이터(DD)는 데이터 캐시 래치(313)에 래치될 수 있다.
한편, 제1 플래그 래치(321)에 래치된 제1 센싱 플래그(SF1)와 제2 플래그 래치(322)에 래치된 제2 센싱 플래그(SF2) 중의 하나는 플래그 캐시 래치(323)에 래치될 수 있다. 일 실시예에 있어서, 플래그 래치 회로(320a)는 제1 플래그 래치(321)에 래치된 제1 센싱 플래그(SF1)가 플래그 캐시 래치(323)에 래치되도록 미리 설정될 수 있다. 다른 실시예에 있어서, 플래그 래치 회로(320a)는 제2 플래그 래치(322)에 래치된 제2 센싱 플래그(SF2)가 플래그 캐시 래치(323)에 래치되도록 미리 설정될 수 있다.
플래그 캐시 래치(323)는 래치된 제1 센싱 플래그(SF1)와 제2 센싱 플래그(SF2) 중의 하나를 센싱 플래그(SF)로서 출력할 수 있다.
판정 데이터(DD)가 데이터 캐시 래치(313)에 래치되는 동작과 제1 센싱 플래그(SF1)와 제2 센싱 플래그(SF2) 중의 하나가 플래그 캐시 래치(323)에 래치되는 동작은 동시에 수행될 수 있다.
다시 도 4를 참조하면, 카운터(410)는 데이터 래치 회로(310a)의 데이터 캐시 래치(313)로부터 출력되는 판정 데이터(DD)를 수신하고, 판정 데이터(DD)에 포함되는 복수의 비트들 중에서 "1"의 값을 갖는 비트들의 개수를 카운트하여 카운트값(CNT)을 생성할 수 있다(단계 S140).
도 6은 도 1의 메모리 셀 어레이에 포함되는 메모리 셀들의 문턱 전압 산포의 일 예를 나타내는 도면이다.
도 6에서, 가로 축은 메모리 셀들의 문턱 전압을 나타내고, 세로 축은 메모리 셀들의 개수를 나타낸다.
도 6을 참조하면, 메모리 셀들은 소거 상태(E) 및 프로그램 상태(P) 중의 하나의 상태를 가질 수 있다.
불휘발성 메모리 장치(10)는 덮어쓰기(rewrite)가 불가능하기 때문에 프로그램 동작을 수행하기에 앞서 메모리 셀들에 대해 소거 동작을 수행하여 상기 메모리 셀들을 소거 상태(E)로 만들 수 있다. 상기 메모리 셀들이 소거 상태(E)로 된 후에, 기입될 데이터에 기초하여 상기 메모리 셀들에 대해 프로그램 동작을 수행하여 상기 메모리 셀들을 소거 상태(E) 및 프로그램 상태(P) 중의 어느 하나로 프로그램할 수 있다.
상기 메모리 셀들이 프로그램된 이후에 수행되는 독출 동작 시에, 제1 전압(V1)을 제1 독출 전압(VR1)으로서 상기 선택 워드 라인에 인가한 후 제1 센싱 데이터(SD1)가 생성되고, 제2 전압(V2)을 제2 독출 전압(VR2)으로서 상기 선택 워드 라인에 인가한 후 제2 센싱 데이터(SD2)가 생성될 수 있다.
도 6에 도시된 바와 같이, 제1 전압(V1) 및 제2 전압(V2)은 메모리 셀들의 문턱 전압 산포가 존재하지 않는 전압 구간에 포함되므로, 제1 센싱 데이터(SD1)에 포함되는 비트들과 제2 센싱 데이터(SD2)에 포함되는 비트들은 각각 실질적으로 서로 동일한 값을 가질 수 있다.
따라서 제1 센싱 데이터(SD1)와 제2 센싱 데이터(SD2)에 대해 배타적 논리합 연산을 수행하여 생성되는 판정 데이터(DD)에 포함되는 모든 비트들은 "0"의 값을 가질 수 있다.
이 경우, 카운터(410)로부터 생성되는 카운트값(CNT)은 "0"일 수 있다.
따라서 카운터(410)로부터 생성되는 카운트값(CNT)이 작을수록, 제1 독출 전압(VR1)은 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨을 갖는 것으로 판단될 수 있다.
이에 반해, 상기 메모리 셀들이 프로그램된 이후에 수행되는 독출 동작 시에, 제3 전압(V3)을 제1 독출 전압(VR1)으로서 상기 선택 워드 라인에 인가한 후 제1 센싱 데이터(SD1)가 생성되고, 제4 전압(V4)을 제2 독출 전압(VR2)으로서 상기 선택 워드 라인에 인가한 후 제2 센싱 데이터(SD2)가 생성될 수 있다.
도 6에 도시된 바와 같이, 제3 전압(V3) 및 제4 전압(V4)은 메모리 셀들의 문턱 전압 산포가 존재하는 전압 구간에 포함되므로, 제1 센싱 데이터(SD1)에 포함되는 비트들과 제2 센싱 데이터(SD2)에 포함되는 비트들은 서로 상이한 값을 가질 수 있다.
따라서 제1 센싱 데이터(SD1)와 제2 센싱 데이터(SD2)에 대해 배타적 논리합 연산을 수행하여 생성되는 판정 데이터(DD)에는 "1"의 값을 갖는 비트들이 포함될 수 있다.
이 경우, 카운터(410)로부터 생성되는 카운트값(CNT)은 "0"보다 클 수 있다. 또한, 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨(예를 들면, 제1 전압(V1))과 제1 독출 전압(VR1)에 상응하는 제3 전압(V3)의 차이를 나타내는 시프트 전압(VSH)이 클수록, 카운터(410)로부터 생성되는 카운트값(CNT)은 증가할 수 있다.
다시 도 4를 참조하면, ECC 회로(420)는 플래그 래치 회로(320a)의 플래그 캐시 래치(323)로부터 출력되는 센싱 플래그(SF)에 대해 ECC 동작을 수행하여 독출 플래그(RFLAG)를 생성할 수 있다(단계 S150). 따라서 독출 플래그(RFLAG)는 상기 선택 페이지의 플래그 영역(120)에 저장된 상기 플래그에 상응할 수 있다.
도 1에 도시된 바와 같이, ECC 회로(420)로부터 생성되는 독출 플래그(RFLAG)는 레지스터(520)에 저장될 수 있다.
한편, 카운터(410)가 데이터 래치 회로(310a)의 데이터 캐시 래치(313)로부터 출력되는 판정 데이터(DD)에 포함되는 복수의 비트들 중에서 "1"의 값을 갖는 비트들의 개수를 카운트하여 카운트값(CNT)을 생성하는 동작(단계 S140)과 ECC 회로(420)가 플래그 래치 회로(320a)의 플래그 캐시 래치(323)로부터 출력되는 센싱 플래그(SF)에 대해 ECC 동작을 수행하여 독출 플래그(RFLAG)를 생성하는 동작(단계 S150)은 동시에 수행될 수 있다.
이후, 계산기(510) 및 제어 회로(610)는 카운터(410)로부터 제공되는 카운트값(CNT) 및 레지스터(520)에 저장된 독출 플래그(RFLAG)에 기초하여 시프트 전압(VSH)을 결정할 수 있다(단계 S160).
시프트 전압(VSH)은 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨(예를 들면, 제1 전압(V1))과 제1 독출 전압(VR1)의 차이에 상응할 수 있다.
도 6을 참조하여 상술한 바와 같이, 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨(예를 들면, 제1 전압(V1))과 제1 독출 전압(VR1)의 차이가 증가할수록 카운트값(CNT)이 증가할 수 있다.
따라서 계산기(510) 및 제어 회로(610)는 카운트값(CNT)이 증가할수록 시프트 전압(VSH)을 증가시키고, 카운트값(CNT)이 감소할수록 시프트 전압(VSH)을 감소시킬 수 있다.
일 실시예에 있어서, 계산기(510)는 레지스터(520)에 저장된 독출 플래그(RFLAG)에 기초하여 카운터(410)로부터 제공되는 카운트값(CNT)을 보정하여 보정된 카운트값(C_CNT)을 생성하고, 제어 회로(610)는 보정된 카운트값(C_CNT)에 기초하여 시프트 전압(VSH)을 결정할 수 있다.
계산기(510)가 레지스터(520)에 저장된 독출 플래그(RFLAG)에 기초하여 카운터(410)로부터 제공되는 카운트값(CNT)을 보정하여 보정된 카운트값(C_CNT)을 생성하는 다양한 실시예들에 대해서는 후술한다.
제어 회로(610)는 시프트 전압(VSH)에 상응하는 제어 신호(CON)를 생성하고, 전압 생성기(620)는 제어 신호(CON)에 기초하여 제1 독출 전압(VR1)을 시프트 전압(VSH)만큼 시프트시켜 제3 독출 전압(VR3)을 생성할 수 있다. 로우 디코더(630)는 제3 독출 전압(VR3)을 상기 선택 워드 라인에 인가하고 상기 독출 패스 전압을 상기 비선택 워드 라인들에 인가할 수 있다.
도 1 및 5를 참조하면, 제3 독출 전압(VR3)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 데이터 센스 앰프(210)는 복수의 비트 라인들(BL1~BLm)을 센싱하여 상기 선택 워드 라인에 연결되는 상기 선택 페이지에 저장된 상기 데이터에 상응하는 제3 센싱 데이터(SD3)를 생성하고, 데이터 래치 회로(310a)에 포함되는 데이터 캐시 래치(313)는 제3 센싱 데이터(SD3)를 래치하여 독출 데이터(RDATA)로서 출력할 수 있다(단계 S170). 독출 데이터(RDATA)는 상기 독출 동작에 따른 불휘발성 메모리 장치(10)의 최종 출력 데이터에 상응할 수 있다.
실시예에 따라서, 제3 독출 전압(VR3)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 플래그 센스 앰프(220)는 복수의 비트 라인들(BL1~BLm)을 센싱하여 상기 선택 워드 라인에 연결되는 상기 선택 페이지에 저장된 상기 플래그에 상응하는 제3 센싱 플래그(SF3)를 생성하고, 플래그 래치 회로(320a)에 포함되는 플래그 캐시 래치(323)는 제3 센싱 플래그(SF3)를 래치할 수 있다. 플래그 캐시 래치(323)에 래치된 제3 센싱 플래그(SF3)는 외부 장치로 제공될 수도 있다.
일 실시예에 있어서, 메모리 셀 어레이(100)의 플래그 영역(120)에 저장된 상기 플래그는 상응하는 페이지의 데이터 영역(110)에 대해 프로그램 동작이 수행된 때의 온도 정보를 포함할 수 있다.
상기 선택 페이지의 데이터 영역(110)에 대해 프로그램 동작이 수행될 때의 온도가 증가할수록, 상기 메모리 셀들의 문턱 전압 산포는 증가할 수 있다.
따라서, 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨(예를 들면, 제1 전압(V1))과 제1 독출 전압(VR1)의 차이가 일정한 경우, 상기 선택 페이지의 데이터 영역(110)에 대해 프로그램 동작이 수행될 때의 온도가 증가할수록, 카운터(410)로부터 제공되는 카운트값(CNT)은 증가할 수 있다.
따라서 계산기(510)는 독출 플래그(RFLAG)에 포함되는 상기 온도가 상대적으로 높은 경우 카운트값(CNT)을 감소시켜 보정된 카운트값(C_CNT)을 생성하고, 상기 온도가 상대적으로 낮은 경우 카운트값(CNT)을 증가시켜 보정된 카운트값(C_CNT)을 생성할 수 있다.
이 경우, 제어 회로(610)는 보정된 카운트값(C_CNT)이 증가할수록 시프트 전압(VSH)을 증가시키고, 보정된 카운트값(C_CNT)이 감소할수록 시프트 전압(VSH)을 감소시킬 수 있다.
일 실시예에 있어서, 메모리 셀 어레이(100)의 플래그 영역(120)에 저장된 상기 플래그는 상응하는 페이지의 데이터 영역(110)의 프로그램/소거 사이클(Program/Erase cycle; P/E cycle) 횟수를 포함할 수 있다.
상기 선택 페이지의 데이터 영역(110)에 대해 수행된 프로그램/소거 사이클 횟수가 증가할수록, 상기 메모리 셀들의 문턱 전압 산포는 증가할 수 있다.
따라서, 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨(예를 들면, 제1 전압(V1))과 제1 독출 전압(VR1)의 차이가 일정한 경우, 상기 선택 페이지의 데이터 영역(110)의 프로그램/소거 사이클 횟수가 증가할수록, 카운터(410)로부터 제공되는 카운트값(CNT)은 증가할 수 있다.
따라서 계산기(510)는 독출 플래그(RFLAG)에 포함되는 상기 프로그램/소거 사이클 횟수가 상대적으로 많은 경우 카운트값(CNT)을 감소시켜 보정된 카운트값(C_CNT)을 생성하고, 상기 프로그램/소거 사이클 횟수가 상대적으로 적은 경우 카운트값(CNT)을 증가시켜 보정된 카운트값(C_CNT)을 생성할 수 있다.
이 경우, 제어 회로(610)는 보정된 카운트값(C_CNT)이 증가할수록 시프트 전압(VSH)을 증가시키고, 보정된 카운트값(C_CNT)이 감소할수록 시프트 전압(VSH)을 감소시킬 수 있다.
도 7 내지 9는 도 1의 메모리 셀 어레이에 포함되는 페이지의 일 예를 나타내는 도면들이다.
일 실시예에 있어서, 메모리 셀 어레이(100)의 상기 복수의 페이지들 각각에 포함되는 데이터 영역(110)은 서로 독립적으로 프로그램 동작이 수행되는 복수의 섹터들(SEC0, SEC1, SEC2, SEC3)을 포함할 수 있다.
또한, 메모리 셀 어레이(100)의 상기 복수의 페이지들 각각에 포함되는 플래그 영역(120)은 대응되는 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 각각에 프로그램 동작이 수행되었는지 여부를 나타내는 상태 정보를 저장하는 복수의 서브 플래그 영역들(SFR0, SFR1, SFR2, SFR3)을 포함할 수 있다.
예를 들어, 제1 서브 플래그 영역(SFR0)은, 제1 섹터(SEC0)가 프로그램 동작이 수행된 상태에 있는 경우 "0"의 값을 갖는 상기 상태 정보를 저장하고, 소거 동작이 수행된 상태에 있는 경우 "1"의 값을 갖는 상기 상태 정보를 저장할 수 있다.
마찬가지로, 제2 서브 플래그 영역(SFR1)은, 제2 섹터(SEC1)가 프로그램 동작이 수행된 상태에 있는 경우 "0"의 값을 갖는 상기 상태 정보를 저장하고, 소거 동작이 수행된 상태에 있는 경우 "1"의 값을 갖는 상기 상태 정보를 저장할 수 있다.
마찬가지로, 제3 서브 플래그 영역(SFR2)은, 제3 섹터(SEC2)가 프로그램 동작이 수행된 상태에 있는 경우 "0"의 값을 갖는 상기 상태 정보를 저장하고, 소거 동작이 수행된 상태에 있는 경우 "1"의 값을 갖는 상기 상태 정보를 저장할 수 있다.
마찬가지로, 제4 서브 플래그 영역(SFR3)은, 제4 섹터(SEC3)가 프로그램 동작이 수행된 상태에 있는 경우 "0"의 값을 갖는 상기 상태 정보를 저장하고, 소거 동작이 수행된 상태에 있는 경우 "1"의 값을 갖는 상기 상태 정보를 저장할 수 있다.
따라서 상기 페이지의 플래그 영역(120)에 저장된 상기 플래그는 플래그 영역(120)에 포함되는 복수의 서브 플래그 영역들(SFR0, SFR1, SFR2, SFR3)에 저장된 상기 상태 정보들을 포함할 수 있다.
예시적으로, 도 8은 제1 내지 제4 섹터들(SEC0, SEC1, SEC2, SEC3)이 모두 프로그램 동작이 수행된 상태에 있는 경우의 페이지를 나타내고, 도 9는 제1 내지 제4 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 제1 섹터(SEC0) 만이 프로그램 동작이 수행된 상태에 있는 경우의 페이지를 나타낸다.
도 7 내지 9에는 예시적으로 상기 복수의 페이지들 각각이 네 개의 섹터들(SEC0, SEC1, SEC2, SEC3)을 포함하는 것으로 도시되어 있으나, 본 발명은 이에 한정되지 않으며, 상기 복수의 페이지들 각각은 임의의 개수의 섹터들을 포함할 수 있다.
일반적인 불휘발성 메모리 장치에서, 프로그램 동작이 수행된 페이지에 포함되는 메모리 셀들 중에서 소거 상태(E)에 잇는 메모리 셀의 개수와 프로그램 상태(P)에 있는 메모리 셀의 개수가 동일해야 데이터 패턴에 따른 오동작을 방지할 수 있다.
따라서 불휘발성 메모리 장치(10)는 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 각각에 대해 기입 데이터를 저장하는 프로그램 동작을 수행하는 경우, 상기 기입 데이터에 대해 랜덤화 과정(randomize process)을 수행하여 상기 랜덤 기입 데이터를 생성한 후, 상기 랜덤 기입 데이터를 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 각각에 프로그램할 수 있다.
여기서, 상기 랜덤 기입 데이터에 포함되는 "0"의 값을 갖는 비트의 개수와 "1"의 값을 갖는 비트의 개수는 실질적으로 동일할 수 있다.
따라서 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 프로그램 동작이 수행된 상태에 있는 섹터에 포함되는 메모리 셀들 중에서 소거 상태(E)에 있는 메모리 셀의 개수와 프로그램 상태(P)에 있는 메모리 셀의 개수는 실질적으로 동일할 수 있다.
한편, 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 소거 동작이 수행된 상태에 있는 섹터에 포함되는 모든 메모리 셀들은 비트들은 소거 상태(E)에 있을 수 있다.
도 10은 도 1의 메모리 셀 어레이에 포함되는 복수의 페이지들 각각이 서로 독립적으로 프로그램 동작이 수행되는 복수의 섹터들을 포함하는 경우에 메모리 셀들의 문턱 전압 산포의 일 예를 나타내는 도면이다.
도 8에 도시된 바와 같이, 상기 선택 페이지에 포함되는 제1 내지 제4 섹터들(SEC0, SEC1, SEC2, SEC3)이 모두 프로그램 동작이 수행된 상태에 있는 경우, 상기 선택 페이지에 포함되는 메모리 셀들 중에서 소거 상태(E)에 있는 메모리 셀의 개수와 프로그램 상태(P)에 있는 메모리 셀의 개수는 실질적으로 동일할 수 있다.
이 경우, 상기 선택 페이지에 포함되는 메모리 셀들의 문턱 전압 산포는 도 10의 제1 그래프(A)와 같이 도시될 수 있다.
이에 반해, 도 9에 도시된 바와 같이, 상기 선택 페이지에 포함되는 제1 내지 제4 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 제1 섹터(SEC0) 만이 프로그램 동작이 수행된 상태에 있는 경우, 상기 선택 페이지에 포함되는 메모리 셀들 중에서 프로그램 상태(P)에 있는 메모리 셀의 개수와 소거 상태(E)에 있는 메모리 셀의 개수의 비율은 1:7에 상응할 수 있다. 즉, 상기 선택 페이지에 포함되는 메모리 셀들 중에서 소거 상태(E)에 있는 메모리 셀의 비율은 약 87.5%에 상응할 수 있다.
이 경우, 상기 선택 페이지에 포함되는 메모리 셀들의 문턱 전압 산포는 도 10의 제2 그래프(B)와 같이 도시될 수 있다.
따라서, 제1 독출 전압(VR1)과 제2 독출 전압(VR2)이 일정한 경우에도, 상기 선택 페이지에 포함되는 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 프로그램 동작이 수행된 섹터의 개수에 따라 카운터(410)로부터 생성되는 카운트값(CNT)은 상이할 수 있다.
따라서 계산기(510)는 독출 플래그(RFLAG)에 포함되는 상기 상태 정보들에 기초하여 데이터 영역(110)에 포함되는 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 프로그램 동작이 수행된 섹터의 개수를 결정하고, 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 프로그램 동작이 수행된 섹터의 개수에 기초하여 카운트값(CNT)을 보정하여 보정된 카운트값(C_CNT)을 생성할 수 있다.
예를 들어, 도 10에 도시된 바와 같이, 제3 전압(V3)을 제1 독출 전압(VR1)으로서 상기 선택 워드 라인에 인가하고, 제4 전압(V4)을 제2 독출 전압(VR2)으로서 상기 선택 워드 라인에 인가했을 때, 데이터 영역(110)에 포함되는 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 프로그램 동작이 수행된 섹터의 개수가 상대적으로 적은 경우(예를 들면, 제2 그래프(B)) 카운터(410)로부터 생성되는 카운트값(CNT)은 데이터 영역(110)에 포함되는 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 프로그램 동작이 수행된 섹터의 개수가 상대적으로 많은 경우(예를 들면, 제1 그래프(A)) 카운터(410)로부터 생성되는 카운트값(CNT)보다 클 수 있다.
따라서 계산기(510)는 데이터 영역(110)에 포함되는 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 프로그램 동작이 수행된 섹터의 개수가 상대적으로 많은 경우, 카운트값(CNT)을 증가시켜 보정된 카운트값(C_CNT)을 생성하고, 데이터 영역(110)에 포함되는 복수의 섹터들(SEC0, SEC1, SEC2, SEC3) 중에서 프로그램 동작이 수행된 섹터의 개수가 상대적으로 적은 경우 카운트값(CNT)을 감소시켜 보정된 카운트값(C_CNT)을 생성할 수 있다.
이 경우, 제어 회로(610)는 보정된 카운트값(C_CNT)이 증가할수록 시프트 전압(VSH)을 증가시키고, 보정된 카운트값(C_CNT)이 감소할수록 시프트 전압(VSH)을 감소시킬 수 있다.
도 11은 도 4에 도시된 불휘발성 메모리 장치의 독출 방법의 시간에 따른 진행을 설명하기 위한 도면이다.
도 11을 참조하면, 본 발명에 따른 불휘발성 메모리 장치(10)는 독출 동작 수행 시에, 제1 독출 전압(VR1)을 사용하여 제1 센싱 동작을 수행하여 제1 센싱 데이터(SD1) 및 제1 센싱 플래그(SF1)를 생성하고, 제2 독출 전압(VR2)을 사용하여 제2 센싱 동작을 수행하여 제2 센싱 데이터(SD2) 및 제2 센싱 플래그(SF2)를 생성하고, 제1 센싱 데이터(SD1)와 제2 센싱 데이터(SD2)에 대해 배타적 논리합 연산을 수행하여 판정 데이터(DD)를 생성할 수 있다.
이후, 불휘발성 메모리 장치(10)는 판정 데이터(DD)에 포함되는 복수의 비트들 중에서 "1"의 값을 갖는 비트들의 개수를 카운트하여 카운트값(CNT)을 생성하는 동작과 제1 센싱 플래그(SF1)와 제2 센싱 플래그(SF2) 중의 하나에 대해 ECC 동작을 수행하여 독출 플래그(RFLAG)를 생성하는 동작을 동시에 수행한 후, 카운트값(CNT) 및 독출 플래그(RFLAG)에 기초하여 시프트 전압(VSH)을 결정할 수 있다.
이후, 불휘발성 메모리 장치(10)는 제1 독출 전압(VR1)이 시프트 전압(VSH)만큼 시프트된 전압에 상응하는 제3 독출 전압(VR3)을 사용하여 제3 센싱 동작을 수행하여 독출 데이터(RDATA)를 생성할 수 있다.
도 1 내지 11을 참조하여 상술한 바와 같이, 본 발명에 따른 불휘발성 메모리 장치(10)는 독출 동작 수행 시에, 제1 독출 전압(VR1)을 사용하여 수행되는 제1 센싱 동작에 의해 생성되는 제1 센싱 데이터(SD1)와 제2 독출 전압(VR2)을 사용하여 수행되는 제2 센싱 동작에 의해 생성되는 제2 센싱 데이터(SD2)의 비교를 통해 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨(예를 들면, 제1 전압(V1))과 제1 독출 전압(VR1)의 차이에 상응하는 시프트 전압(VSH)을 결정함에 있어서, 데이터 영역(110)에 대한 정보에 상응하는 상기 플래그에 기초하여 시프트 전압(VSH)의 크기를 조절할 수 있다.
이후, 불휘발성 메모리 장치(10)는 제1 독출 전압(VR1)이 시프트 전압(VSH)만큼 시프트된 전압에 상응하는 제3 독출 전압(VR3)을 사용하여 제3 센싱 동작을 수행하여 독출 데이터(RDATA)를 생성하므로, 본 발명에 따른 불휘발성 메모리 장치(10)는 독출 동작의 신뢰성을 효과적으로 향상시킬 수 있다.
또한, 도 11에 도시된 바와 같이, 본 발명에 따른 불휘발성 메모리 장치(10)는 시프트 전압(VSH)을 결정하는 데에 사용되는 독출 플래그(RFLAG)를 생성하기 위해 별도의 시간을 사용하지 않고, 제1 센싱 데이터(SD1)와 제2 센싱 데이터(SD2)에 대해 배타적 논리합 연산을 수행하여 생성되는 판정 데이터(DD)에 포함되는 복수의 비트들 중에서 "1"의 값을 갖는 비트들의 개수를 카운트하여 카운트값(CNT)을 생성하는 동작과 제1 센싱 플래그(SF1)와 제2 센싱 플래그(SF2) 중의 하나에 대해 ECC 동작을 수행하여 독출 플래그(RFLAG)를 생성하는 동작을 동시에 수행할 수 있다. 따라서 본 발명에 따른 불휘발성 메모리 장치(10)는 독출 동작의 속도를 감소시키지 않고도 독출 동작의 신뢰성을 효과적으로 향상시킬 수 있다.
또한, 본 발명에 따른 불휘발성 메모리 장치(10)는 외부의 메모리 컨트롤러로부터의 제어 없이, 자체적으로 상기 플래그에 기초하여 메모리 셀 어레이(100)에 포함되는 메모리 셀들의 문턱 전압의 변화를 추적(tracking)하여 독출 전압의 크기를 가변함으로써, 독출 동작의 신뢰성을 향상시킬 수 있다.
도 12는 본 발명의 다른 실시예에 따른 불휘발성 메모리 장치의 독출 방법을 나타내는 순서도이다.
도 12의 독출 방법은 도 1에 도시된 불휘발성 메모리 장치(10)를 통해 수행될 수 있다.
이하, 도 1 내지 3 및 12를 참조하여 불휘발성 메모리 장치(10)의 독출 방법에 대해 상세히 설명한다.
전압 생성기(620)는 제어 회로(610)로부터 제공되는 제어 신호(CON)에 기초하여 제1 독출 전압(VR1) 및 상기 독출 패스 전압을 생성하고, 로우 디코더(630)는 제1 독출 전압(VR1)을 상기 선택 워드 라인에 인가하고 상기 독출 패스 전압을 상기 비선택 워드 라인들에 인가할 수 있다.
제1 독출 전압(VR1)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 데이터 센스 앰프(210) 및 플래그 센스 앰프(220)는 복수의 비트 라인들(BL1~BLm)을 센싱하여 상기 선택 워드 라인에 연결되는 상기 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 각각 상응하는 제1 센싱 데이터(SD1) 및 제1 센싱 플래그(SF1)를 생성할 수 있다(단계 S210).
제1 센싱 데이터(SD1) 및 제1 센싱 플래그(SF1)는 각각 데이터 래치 회로(310), 플래그 래치 회로(320)에 래치될 수 있다.
이후, 전압 생성기(620)는 제어 회로(610)로부터 제공되는 제어 신호(CON)에 기초하여 제1 독출 전압(VR1)과는 다른 제2 독출 전압(VR2) 및 상기 독출 패스 전압을 생성하고, 로우 디코더(630)는 제2 독출 전압(VR2)을 상기 선택 워드 라인에 인가하고 상기 독출 패스 전압을 상기 비선택 워드 라인들에 인가할 수 있다.
일 실시예에 있어서, 제2 독출 전압(VR2)의 크기와 제1 독출 전압(VR1)의 크기의 차이는 제1 독출 전압(VR1)의 크기에 비해 매우 작을 수 있다.
제2 독출 전압(VR2)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 데이터 센스 앰프(210) 및 플래그 센스 앰프(220)는 복수의 비트 라인들(BL1~BLm)을 센싱하여 상기 선택 워드 라인에 연결되는 상기 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 각각 상응하는 제2 센싱 데이터(SD2) 및 제2 센싱 플래그(SF2)를 생성할 수 있다(단계 S220).
제2 센싱 데이터(SD2) 및 제2 센싱 플래그(SF2)는 각각 데이터 래치 회로(310), 플래그 래치 회로(320)에 래치될 수 있다.
도 13은 도 1의 불휘발성 메모리 장치에 포함되는 데이터 래치 회로 및 플래그 래치 회로의 다른 예를 나타내는 블록도이다.
도 13을 참조하면, 데이터 래치 회로(310b)는 데이터 래치(315), 데이터 캐시 래치(316), 및 배타적 논리합 게이트(317)를 포함하고, 플래그 래치 회로(320b)는 플래그 래치(325) 및 플래그 캐시 래치(326)를 포함할 수 있다.
제1 독출 전압(VR1)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 데이터 센스 앰프(210) 및 플래그 센스 앰프(220)로부터 제공되는 제1 센싱 데이터(SD1) 및 제1 센싱 플래그(SF1)는 각각 데이터 래치 회로(310b)의 데이터 래치(315) 및 플래그 래치 회로(320b)의 플래그 래치(325)에 동시에 래치될 수 있다.
이후, 데이터 래치(315)에 래치된 제1 센싱 데이터(SD1) 및 플래그 래치(325)에 래치된 제1 센싱 플래그(SF1)는 각각 데이터 캐시 래치(316) 및 플래그 캐시 래치(326)에 동시에 래치될 수 있다.
또한, 제2 독출 전압(VR2)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 데이터 센스 앰프(210) 및 플래그 센스 앰프(220)로부터 제공되는 제2 센싱 데이터(SD2) 및 제2 센싱 플래그(SF2)는 각각 데이터 래치 회로(310b)의 데이터 래치(315) 및 플래그 래치 회로(320b)의 플래그 래치(325)에 동시에 래치될 수 있다(단계 S220).
이와 동시에, ECC 회로(420)는 플래그 캐시 래치(326)로부터 출력되는 제1 센싱 플래그(SF1)에 대해 ECC 동작을 수행하여 독출 플래그(RFLAG)를 생성할 수 있다(단계 S230).
즉, 제2 센싱 데이터(SD2)를 데이터 래치(315)에 래치하는 동작(단계 S220)과 플래그 캐시 래치(326)에 래치된 제1 센싱 플래그(SF1)에 대해 ECC 동작을 수행하여 독출 플래그(RFLAG)를 생성하는 동작(단계 S230)은 동시에 수행될 수 있다.
독출 플래그(RFLAG)는 상기 선택 페이지의 플래그 영역(120)에 저장된 상기 플래그에 상응할 수 있다.
도 1에 도시된 바와 같이, ECC 회로(420)로부터 생성되는 독출 플래그(RFLAG)는 레지스터(520)에 저장될 수 있다.
이후, 배타적 논리합 게이트(317)는 데이터 래치(315)에 래치된 제2 센싱 데이터(SD2)와 데이터 캐시 래치(316)에 래치된 제1 센싱 데이터(SD1)에 대해 배타적 논리합 연산을 수행하여 판정 데이터(DD)를 생성할 수 있다(단계 S240). 배타적 논리합 게이트(317)로부터 출력되는 판정 데이터(DD)는 데이터 캐시 래치(316)에 래치될 수 있다.
다시 도 12를 참조하면, 카운터(410)는 데이터 래치 회로(310b)의 데이터 캐시 래치(316)로부터 출력되는 판정 데이터(DD)를 수신하고, 판정 데이터(DD)에 포함되는 복수의 비트들 중에서 "1"의 값을 갖는 비트들의 개수를 카운트하여 카운트값(CNT)을 생성할 수 있다(단계 S250).
도 6을 참조하여 상술한 바와 같이, 카운터(410)로부터 생성되는 카운트값(CNT)이 작을수록, 제1 독출 전압(VR1)은 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨을 갖는 것으로 판단될 수 있다. 또한, 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨(예를 들면, 제1 전압(V1))과 제1 독출 전압(VR1)의 차이가 클수록, 카운터(410)로부터 생성되는 카운트값(CNT)은 증가할 수 있다.
이후, 계산기(510) 및 제어 회로(610)는 카운터(410)로부터 제공되는 카운트값(CNT) 및 레지스터(520)에 저장된 독출 플래그(RFLAG)에 기초하여 시프트 전압(VSH)을 결정할 수 있다(단계 S260).
시프트 전압(VSH)은 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨(예를 들면, 제1 전압(V1))과 제1 독출 전압(VR1)의 차이에 상응할 수 있다.
도 6을 참조하여 상술한 바와 같이, 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨(예를 들면, 제1 전압(V1))과 제1 독출 전압(VR1)의 차이가 증가할수록 카운트값(CNT)이 증가할 수 있다.
따라서 계산기(510) 및 제어 회로(610)는 카운트값(CNT)이 증가할수록 시프트 전압(VSH)을 증가시키고, 카운트값(CNT)이 감소할수록 시프트 전압(VSH)을 감소시킬 수 있다.
일 실시예에 있어서, 계산기(510)는 레지스터(520)에 저장된 독출 플래그(RFLAG)에 기초하여 카운터(410)로부터 제공되는 카운트값(CNT)을 보정하여 보정된 카운트값(C_CNT)을 생성하고, 제어 회로(610)는 보정된 카운트값(C_CNT)에 기초하여 시프트 전압(VSH)을 결정할 수 있다.
플래그 영역(120)에 저장되는 상기 플래그에 포함되는 정보의 종류에 따라 계산기(510)가 레지스터(520)에 저장된 독출 플래그(RFLAG)에 기초하여 카운터(410)로부터 제공되는 카운트값(CNT)을 보정하여 보정된 카운트값(C_CNT)을 생성하는 다양한 실시예들에 대해서는 도 1 내지 11을 참조하여 상술하였으므로, 여기서는 중복되는 설명은 생략한다.
제어 회로(610)는 시프트 전압(VSH)에 상응하는 제어 신호(CON)를 생성하고, 전압 생성기(620)는 제어 신호(CON)에 기초하여 제1 독출 전압(VR1)을 시프트 전압(VSH)만큼 시프트시켜 제3 독출 전압(VR3)을 생성할 수 있다. 로우 디코더(630)는 제3 독출 전압(VR3)을 상기 선택 워드 라인에 인가하고 상기 독출 패스 전압을 상기 비선택 워드 라인들에 인가할 수 있다.
도 1 및 13을 참조하면, 제3 독출 전압(VR3)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 데이터 센스 앰프(210)는 복수의 비트 라인들(BL1~BLm)을 센싱하여 상기 선택 워드 라인에 연결되는 상기 선택 페이지에 저장된 상기 데이터에 상응하는 제3 센싱 데이터(SD3)를 생성하고, 데이터 래치 회로(310b)에 포함되는 데이터 캐시 래치(316)는 제3 센싱 데이터(SD3)를 래치하여 독출 데이터(RDATA)로서 출력할 수 있다(단계 S270). 독출 데이터(RDATA)는 상기 독출 동작에 따른 불휘발성 메모리 장치(10)의 최종 출력 데이터에 상응할 수 있다.
실시예에 따라서, 제3 독출 전압(VR3)이 상기 선택 워드 라인에 인가되고, 상기 독출 패스 전압이 상기 비선택 워드 라인들에 인가된 이후, 플래그 센스 앰프(220)는 복수의 비트 라인들(BL1~BLm)을 센싱하여 상기 선택 워드 라인에 연결되는 상기 선택 페이지에 저장된 상기 플래그에 상응하는 제3 센싱 플래그(SF3)를 생성하고, 플래그 래치 회로(320b)에 포함되는 플래그 캐시 래치(326)는 제3 센싱 플래그(SF3)를 래치할 수 있다. 플래그 캐시 래치(326)에 래치된 제3 센싱 플래그(SF3)는 외부 장치로 제공될 수도 있다.
도 14는 도 12에 도시된 불휘발성 메모리 장치의 독출 방법의 시간에 따른 진행을 설명하기 위한 도면이다.
도 14를 참조하면, 본 발명에 따른 불휘발성 메모리 장치(10)는 독출 동작 수행 시에, 제1 독출 전압(VR1)을 사용하여 제1 센싱 동작을 수행하여 제1 센싱 데이터(SD1) 및 제1 센싱 플래그(SF1)를 생성할 수 있다.
또한, 불휘발성 메모리 장치(10)는 제2 독출 전압(VR2)을 사용하여 제2 센싱 동작을 수행하여 제2 센싱 데이터(SD2)를 생성하는 동작과 제1 센싱 플래그(SF1)에 대해 ECC 동작을 수행하여 독출 플래그(RFLAG)를 생성하는 동작을 동시에 수행할 수 있다.
이후, 제1 센싱 데이터(SD1)와 제2 센싱 데이터(SD2)에 대해 배타적 논리합 연산을 수행하여 판정 데이터(DD)를 생성하고, 판정 데이터(DD)에 포함되는 복수의 비트들 중에서 "1"의 값을 갖는 비트들의 개수를 카운트하여 카운트값(CNT)을 생성하고, 카운트값(CNT) 및 독출 플래그(RFLAG)에 기초하여 시프트 전압(VSH)을 결정할 수 있다.
이후, 불휘발성 메모리 장치(10)는 제1 독출 전압(VR1)이 시프트 전압(VSH)만큼 시프트된 전압에 상응하는 제3 독출 전압(VR3)을 사용하여 제3 센싱 동작을 수행하여 독출 데이터(RDATA)를 생성할 수 있다.
도 1 내지 3 및 12 내지 14를 참조하여 상술한 바와 같이, 본 발명에 따른 불휘발성 메모리 장치(10)는 독출 동작 수행 시에, 제1 독출 전압(VR1)을 사용하여 수행되는 제1 센싱 동작에 의해 생성되는 제1 센싱 데이터(SD1)와 제2 독출 전압(VR2)을 사용하여 수행되는 제2 센싱 동작에 의해 생성되는 제2 센싱 데이터(SD2)의 비교를 통해 소거 상태(E)와 프로그램 상태(P)를 구분하기에 적당한 전압 레벨(예를 들면, 제1 전압(V1))과 제1 독출 전압(VR1)의 차이에 상응하는 시프트 전압(VSH)을 결정함에 있어서, 데이터 영역(110)에 대한 정보에 상응하는 상기 플래그에 기초하여 시프트 전압(VSH)의 크기를 조절할 수 있다.
이후, 불휘발성 메모리 장치(10)는 제1 독출 전압(VR1)이 시프트 전압(VSH)만큼 시프트된 전압에 상응하는 제3 독출 전압(VR3)을 사용하여 제3 센싱 동작을 수행하여 독출 데이터(RDATA)를 생성하므로, 본 발명에 따른 불휘발성 메모리 장치(10)는 독출 동작의 신뢰성을 효과적으로 향상시킬 수 있다.
또한, 도 14에 도시된 바와 같이, 본 발명에 따른 불휘발성 메모리 장치(10)는 시프트 전압(VSH)을 결정하는 데에 사용되는 독출 플래그(RFLAG)를 생성하기 위해 별도의 시간을 사용하지 않고, 제2 독출 전압(VR2)을 사용하여 제2 센싱 동작을 수행하여 제2 센싱 데이터(SD2)를 생성하는 동작과 제1 센싱 플래그(SF1)에 대해 ECC 동작을 수행하여 독출 플래그(RFLAG)를 생성하는 동작을 동시에 수행할 수 있다. 따라서 본 발명에 따른 불휘발성 메모리 장치(10)는 독출 동작의 속도를 감소시키지 않고도 독출 동작의 신뢰성을 효과적으로 향상시킬 수 있다.
또한, 본 발명에 따른 불휘발성 메모리 장치(10)는 외부의 메모리 컨트롤러로부터의 제어 없이, 자체적으로 상기 플래그에 기초하여 메모리 셀 어레이(100)에 포함되는 메모리 셀들의 문턱 전압의 변화를 추적(tracking)하여 독출 전압의 크기를 가변함으로써, 독출 동작의 신뢰성을 향상시킬 수 있다.
도 15는 본 발명의 일 실시예에 따른 메모리 시스템을 나타내는 블록도이다.
도 15를 참조하면, 메모리 시스템(900)은 메모리 컨트롤러(910) 및 불휘발성 메모리 장치(920)를 포함한다.
불휘발성 메모리 장치(920)는 메모리 셀 어레이(921)를 포함할 수 있다. 메모리 셀 어레이(921)는 데이터를 저장하는 데이터 영역(922) 및 데이터 영역(922)에 대한 정보에 상응하는 플래그를 저장하는 플래그 영역(923)으로 구분될 수 있다.
불휘발성 메모리 장치(920)는 도 1에 도시된 불휘발성 메모리 장치(10)로 구현될 수 있다. 도 1에 도시된 불휘발성 메모리 장치(10)의 구성 및 동작에 대해서는 도 1 내지 14를 참조하여 상세히 설명하였으므로, 여기서는 불휘발성 메모리 장치(920)에 대한 상세한 설명은 생략한다.
메모리 컨트롤러(910)는 불휘발성 메모리 장치(920)를 제어한다. 메모리 컨트롤러(910)는 외부의 호스트와 불휘발성 메모리 장치(920) 사이의 데이터 교환을 제어할 수 있다.
메모리 컨트롤러(910)는 중앙 처리 장치(911), 버퍼 메모리(912), 호스트 인터페이스(913) 및 메모리 인터페이스(914)를 포함할 수 있다.
중앙 처리 장치(911)는 상기 데이터 교환을 위한 동작을 수행할 수 있다. 버퍼 메모리(912)는 DRAM(Dynamic random access memory), SRAM(Static random access memory), PRAM(Phase random access memory), FRAM(Ferroelectric random access memory), RRAM(Resistive random access memory), 또는 MRAM(Magnetic random access memory)으로 구현될 수 있다.
버퍼 메모리(912)는 중앙 처리 장치(911)의 동작 메모리일 수 있다. 실시예에 따라서, 버퍼 메모리(912)는 메모리 컨트롤러(910)의 내부 또는 외부에 위치할 수 있다.
호스트 인터페이스(913)는 상기 호스트와 연결되고, 메모리 인터페이스(914)는 불휘발성 메모리 장치(920)와 연결된다. 중앙 처리 장치(911)는 호스트 인터페이스(913)를 통하여 상기 호스트와 통신할 수 있다. 예를 들어, 호스트 인터페이스(913)는 USB(Universal Serial Bus), MMC(Multi-Media Card), PCI-E(Peripheral Component Interconnect-Express), SAS(Serial-attached SCSI), SATA(Serial Advanced Technology Attachment), PATA(Parallel Advanced Technology Attachment), SCSI(Small Computer System Interface), ESDI(Enhanced Small Disk Interface), IDE(Integrated Drive Electronics) 등과 같은 다양한 인터페이스 프로토콜들 중 적어도 하나를 통해 호스트와 통신하도록 구성될 수 있다.
또한, 중앙 처리 장치(911)는 메모리 인터페이스(914)를 통하여 불휘발성 메모리 장치(920)와 통신할 수 있다.
실시예에 따라서, 메모리 컨트롤러(910)는 스타트-업 코드를 저장하는 불휘발성 메모리 장치를 더 포함할 수 있고, 에러 정정을 위한 에러 정정 블록(915)을 더 포함할 수 있다.
일 실시예에서, 메모리 컨트롤러(910)는 불휘발성 메모리 장치(920)에 빌트-인(built-in)되어 구현될 수 있다. 메모리 컨트롤러(910)가 빌트-인되어 구현된 NAND 플래시 메모리 장치를 원낸드 메모리 장치(One-NAND memory device)라 명명할 수 있다.
메모리 시스템(900)은 메모리 카드(memory card), 솔리드 스테이트 드라이브(solid state drive) 등과 같은 형태로 구현될 수 있다.
도 16은 본 발명의 일 실시예에 따른 메모리 카드를 나타내는 블록도이다.
도 16을 참조하면, 메모리 카드(1000)는 복수의 접속 핀들(1010), 메모리 컨트롤러(1020) 및 불휘발성 메모리 장치(1030)를 포함한다.
호스트와 메모리 카드(1000) 사이의 신호들이 송수신되도록 복수의 접속 핀들(1010)은 상기 호스트에 연결될 수 있다. 복수의 접속 핀들(1010)은 클록 핀, 커맨드 핀, 데이터 핀 및/또는 리셋 핀을 포함할 수 있다.
메모리 컨트롤러(1020)는 상기 호스트로부터 데이터를 수신하고, 상기 수신된 데이터를 불휘발성 메모리 장치(1030)에 저장할 수 있다.
불휘발성 메모리 장치(1030)는 도 1에 도시된 불휘발성 메모리 장치(10)로 구현될 수 있다. 도 1에 도시된 불휘발성 메모리 장치(10)의 구성 및 동작에 대해서는 도 1 내지 14를 참조하여 상세히 설명하였으므로, 여기서는 불휘발성 메모리 장치(1030)에 대한 상세한 설명은 생략한다.
메모리 카드(1000)는 멀티미디어 카드(MultiMedia Card; MMC), 임베디드 멀티미디어 카드(embedded MultiMedia Card; eMMC), 하이브리드 임베디드 멀티미디어 카드(hybrid embedded MultiMedia Card; hybrid eMMC), SD(Secure Digital) 카드, 마이크로SD 카드, 메모리 스틱(Memory Stick), ID 카드, PCMCIA(Personal Computer Memory Card International Association) 카드, 칩 카드(Chip Card), USB 카드, 스마트 카드(Smart Card), CF 카드(Compact Flash Card)등과 같은 메모리 카드일 수 있다.
실시예에 따라서, 메모리 카드(1000)는 컴퓨터(computer), 노트북(laptop), 핸드폰(cellular phone), 스마트폰(smart phone), MP3 플레이어, 피디에이(Personal Digital Assistants; PDA), 피엠피(Portable Multimedia Player; PMP), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console) 등과 같은 호스트에 장착될 수 있다.
도 17은 본 발명의 일 실시예에 따른 솔리드 스테이트 드라이브 시스템을 나타내는 블록도이다.
도 17을 참조하면, 솔리드 스테이트 드라이브 시스템(2000)은 호스트(2100) 및 솔리드 스테이트 드라이브(2200)를 포함한다.
솔리드 스테이트 드라이브(2200)는 복수의 불휘발성 메모리 장치들(2210-1, 2210-2, ..., 2210-n) 및 SSD 컨트롤러(2220)를 포함한다.
복수의 불휘발성 메모리 장치들(2210-1, 2210-2, ..., 2210-n)은 솔리드 스테이트 드라이브(2200)의 저장 매체로서 사용된다.
복수의 불휘발성 메모리 장치들(2210-1, 2210-2, ..., 2210-n) 각각은 도 1에 도시된 불휘발성 메모리 장치(10)로 구현될 수 있다. 도 1에 도시된 불휘발성 메모리 장치(10)의 구성 및 동작에 대해서는 도 1 내지 14를 참조하여 상세히 설명하였으므로, 여기서는 복수의 불휘발성 메모리 장치들(2210-1, 2210-2, ..., 2210-n)에 대한 상세한 설명은 생략한다.
SSD 컨트롤러(2220)는 복수의 채널들(CH1, CH2, ..., CHn)을 통해 복수의 불휘발성 메모리 장치들(2210-1, 2210-2, ..., 2210-n)과 각각 연결된다.
SSD 컨트롤러(2220)는 신호 커넥터(2221)를 통해 호스트(2100)와 신호(SGL)를 송수신한다. 여기에서, 신호(SGL)에는 커맨드, 어드레스, 데이터 등이 포함될 수 있다. SSD 컨트롤러(2220)는 호스트(2100)의 커맨드에 따라 복수의 불휘발성 메모리 장치들(2210-1, 2210-2, ..., 2210-n)에 데이터를 쓰거나 복수의 불휘발성 메모리 장치들(2210-1, 2210-2, ..., 2210-n)로부터 데이터를 읽어낸다.
솔리드 스테이트 드라이브(2200)는 보조 전원 장치(2230)를 더 포함할 수 있다. 보조 전원 장치(2230)는 전원 커넥터(2231)를 통해 호스트(2100)로부터 전원(PWR)을 입력받아 SSD 컨트롤러(2220)에 전원을 공급할 수 있다. 한편, 보조 전원 장치(2230)는 솔리드 스테이트 드라이브(2200) 내에 위치할 수도 있고, 솔리드 스테이트 드라이브(2200) 밖에 위치할 수도 있다. 예를 들면, 보조 전원 장치(2230)는 메인 보드에 위치하고, 솔리드 스테이트 드라이브(2200)에 보조 전원을 제공할 수도 있다.
도 18은 본 발명의 일 실시예에 따른 모바일 시스템을 나타내는 블록도이다.
도 18을 참조하면, 모바일 시스템(3000)은 어플리케이션 프로세서(3100), 통신(Connectivity)부(3200), 사용자 인터페이스(3300), 불휘발성 메모리 장치(NVM)(3400), 휘발성 메모리 장치(VM)(3500) 및 파워 서플라이(3600)를 포함한다.
실시예에 따라, 모바일 시스템(3000)은 휴대폰(Mobile Phone), 스마트 폰(Smart Phone), 랩톱 컴퓨터(laptop computer), 개인 정보 단말기(Personal Digital Assistant; PDA), 휴대형 멀티미디어 플레이어(Portable Multimedia Player; PMP), 디지털 카메라(Digital Camera), 음악 재생기(Music Player), 휴대용 게임 콘솔(Portable Game Console), 네비게이션(Navigation) 시스템 등과 같은 임의의 모바일 시스템일 수 있다.
어플리케이션 프로세서(3100)는 인터넷 브라우저, 게임, 동영상 등을 제공하는 어플리케이션들을 실행할 수 있다. 실시예에 따라, 어플리케이션 프로세서(3100)는 하나의 프로세서 코어(Single Core)를 포함하거나, 복수의 프로세서 코어들(Multi-Core)을 포함할 수 있다. 예를 들어, 어플리케이션 프로세서(3100)는 듀얼 코어(Dual-Core), 쿼드 코어(Quad-Core), 헥사 코어(Hexa-Core) 등의 멀티 코어(Multi-Core)를 포함할 수 있다. 또한, 실시예에 따라, 어플리케이션 프로세서(3100)는 내부 또는 외부에 위치한 캐시 메모리(Cache Memory)를 더 포함할 수 있다.
통신부(3200)는 외부 장치와 무선 통신 또는 유선 통신을 수행할 수 있다. 예를 들어, 통신부(3200)는 이더넷(Ethernet) 통신, 근거리 자기장 통신(Near Field Communication; NFC), 무선 식별(Radio Frequency Identification; RFID) 통신, 이동 통신(Mobile Telecommunication), 메모리 카드 통신, 범용 직렬 버스(Universal Serial Bus; USB) 통신 등을 수행할 수 있다. 예를 들어, 통신부(3200)는 베이스밴드 칩 셋(Baseband Chipset)을 포함할 수 있고, GSM, GPRS, WCDMA, HSxPA 등의 통신을 지원할 수 있다.
불휘발성 메모리 장치(3400)는 모바일 시스템(3000)을 부팅하기 위한 부트 이미지를 저장할 수 있다.
불휘발성 메모리 장치(3400)는 도 1에 도시된 불휘발성 메모리 장치(10)로 구현될 수 있다. 도 1에 도시된 불휘발성 메모리 장치(10)의 구성 및 동작에 대해서는 도 1 내지 14를 참조하여 상세히 설명하였으므로, 여기서는 불휘발성 메모리 장치(3400)에 대한 상세한 설명은 생략한다.
휘발성 메모리 장치(3500)는 어플리케이션 프로세서(3100)에 의해 처리되는 데이터를 저장하거나, 동작 메모리(Working Memory)로서 작동할 수 있다.
사용자 인터페이스(3300)는 키패드, 터치스크린과 같은 하나 이상의 입력 장치, 및/또는 스피커, 디스플레이 장치와 같은 하나 이상의 출력 장치를 포함할 수 있다.
파워 서플라이(3600)는 모바일 시스템(3000)의 동작 전압을 공급할 수 있다.
또한, 실시예에 따라, 모바일 시스템(3000)은 이미지 프로세서를 더 포함할 수 있고, 메모리 카드(Memory Card), 솔리드 스테이트 드라이브(Solid State Drive; SSD), 하드 디스크 드라이브(Hard DiskDrive; HDD), 씨디롬(CD-ROM) 등과 같은 저장 장치를 더 포함할 수 있다.
모바일 시스템(3000) 또는 모바일 시스템(3000)의 구성요소들은 다양한 형태들의 패키지를 이용하여 실장될 수 있는데, 예를 들어, PoP(Package on Package), BGAs(Ball grid arrays), CSPs(Chip scale packages), PLCC(Plastic Leaded Chip Carrier), PDIP(Plastic Dual In-Line Package), Die in Waffle Pack, Die in Wafer Form, COB(Chip On Board), CERDIP(Ceramic Dual In-Line Package), MQFP(Plastic Metric Quad Flat Pack), TQFP(Thin Quad Flat-Pack), SOIC(Small Outline Integrated Circuit), SSOP(Shrink Small Outline Package), TSOP(Thin Small Outline Package), TQFP(Thin Quad Flat-Pack), SIP(System In Package), MCP(Multi Chip Package), WFP(Wafer-level Fabricated Package), WSP(Wafer-Level Processed Stack Package) 등과 같은 패키지들을 이용하여 실장될 수 있다.
본 발명은 불휘발성 메모리 장치를 구비하는 임의의 전자 장치에 유용하게 이용될 수 있다. 예를 들어, 본 발명은 불휘발성 메모리 장치를 구비하는 휴대폰(Mobile Phone), 스마트 폰(Smart Phone), 개인 정보 단말기(Personal Digital Assistant; PDA), 휴대형 멀티미디어 플레이어(Portable Multimedia Player; PMP), 디지털 카메라(Digital Camera), 음악 재생기(Music Player), 휴대용 게임 콘솔(Portable Game Console), 네비게이션(Navigation) 시스템 등에 적용될 수 있다.
상술한 바와 같이, 본 발명의 바람직한 실시예를 참조하여 설명하였지만 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (10)

  1. 복수의 워드 라인들 및 복수의 비트 라인들에 연결되고, 각각이 데이터를 저장하는 데이터 영역 및 상기 데이터 영역에 대한 정보에 상응하는 플래그를 저장하는 플래그 영역을 포함하는 복수의 페이지들을 포함하는 불휘발성 메모리 장치의 독출 방법에서,
    상기 복수의 워드 라인들 중의 선택 워드 라인에 제1 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 워드 라인에 연결되는 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 상응하는 제1 센싱 데이터 및 제1 센싱 플래그를 생성하는 단계;
    상기 선택 워드 라인에 제2 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 상응하는 제2 센싱 데이터 및 제2 센싱 플래그를 생성하는 단계;
    상기 제1 센싱 데이터와 상기 제2 센싱 데이터에 대해 산술 연산을 수행하여 판정 데이터를 생성하는 단계;
    상기 판정 데이터에 포함되는 제1 논리 레벨을 갖는 비트들의 개수를 카운트하여 카운트값을 생성하는 단계;
    상기 제1 센싱 플래그와 상기 제2 센싱 플래그 중의 하나에 대해 에러 체크 및 정정 동작을 수행하여 독출 플래그를 생성하는 단계;
    상기 독출 플래그에 기초하여 상기 카운트값을 보정하여 보정된 카운트값을 생성하고, 상기 보정된 카운트값에 기초하여 시프트 전압을 결정하는 단계; 및
    상기 선택 워드 라인에 상기 제1 독출 전압이 상기 시프트 전압만큼 시프트된 전압에 상응하는 제3 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 페이지에 저장된 상기 데이터에 상응하는 독출 데이터를 생성하는 단계를 포함하는 불휘발성 메모리 장치의 독출 방법.
  2. 제1 항에 있어서, 상기 판정 데이터에 포함되는 제1 논리 레벨을 갖는 비트들의 개수를 카운트하여 상기 카운트값을 생성하는 동작과 상기 제1 센싱 플래그 및 상기 제2 센싱 플래그 중의 하나에 대해 에러 체크 및 정정 동작을 수행하여 상기 독출 플래그를 생성하는 동작은 동시에 수행되는 불휘발성 메모리 장치의 독출 방법.
  3. 제1 항에 있어서, 상기 시프트 전압을 결정하는 단계는,
    상기 보정된 카운트값이 증가할수록 상기 시프트 전압을 증가시키는 단계; 및
    상기 보정된 카운트값이 감소할수록 상기 시프트 전압을 감소시키는 단계를 포함하는 불휘발성 메모리 장치의 독출 방법.
  4. 제1 항에 있어서, 상기 플래그는 상기 데이터 영역에 대해 프로그램 동작이 수행된 때의 온도를 포함하는 불휘발성 메모리 장치의 독출 방법.
  5. 제1 항에 있어서, 상기 플래그는 상기 데이터 영역의 프로그램/소거 사이클(Program/Erase cycle; P/E cycle) 횟수를 포함하는 불휘발성 메모리 장치의 독출 방법.
  6. 제1 항에 있어서, 상기 복수의 페이지들 각각에 포함되는 상기 데이터 영역은 서로 독립적으로 프로그램 동작이 수행되는 복수의 섹터들을 포함하고,
    상기 복수의 페이지들 각각에 포함되는 상기 플래그 영역은 복수의 서브 플래그 영역들을 포함하고,
    상기 복수의 서브 플래그 영역들 각각은 상응하는 데이터 영역에 포함되는 상기 복수의 섹터들 각각에 프로그램 동작이 수행되었는지 여부를 나타내는 상태 정보를 저장하고,
    상기 플래그 영역에 저장되는 상기 플래그는 상기 플래그 영역에 포함되는 상기 복수의 서브 플래그 영역들에 저장된 상기 상태 정보들을 포함하는 불휘발성 메모리 장치의 독출 방법.
  7. 제6 항에 있어서, 상기 시프트 전압을 결정하는 단계는,
    상기 독출 플래그에 포함되는 상기 상태 정보들에 기초하여 상기 데이터 영역에 포함되는 상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수를 결정하는 단계;
    상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수에 기초하여 상기 카운트값을 보정하여 상기 보정된 카운트값을 생성하는 단계; 및
    상기 보정된 카운트값에 기초하여 상기 시프트 전압을 결정하는 단계를 포함하는 불휘발성 메모리 장치의 독출 방법.
  8. 제7 항에 있어서, 상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수에 기초하여 상기 카운트값을 보정하여 상기 보정된 카운트값을 생성하는 단계는,
    상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수가 상대적으로 많은 경우, 상기 카운트값을 증가시켜 상기 보정된 카운트값을 생성하는 단계; 및
    상기 복수의 섹터들 중에서 상기 프로그램 동작이 수행된 섹터의 개수가 상대적으로 적은 경우, 상기 카운트값을 감소시켜 상기 보정된 카운트값을 생성하는 단계를 포함하고,
    상기 보정된 카운트값에 기초하여 상기 시프트 전압을 결정하는 단계는,
    상기 보정된 카운트값이 증가할수록 상기 시프트 전압을 증가시키는 단계; 및
    상기 보정된 카운트값이 감소할수록 상기 시프트 전압을 감소시키는 단계를 포함하는 불휘발성 메모리 장치의 독출 방법.
  9. 복수의 워드 라인들 및 복수의 비트 라인들에 연결되고, 각각이 데이터를 저장하는 데이터 영역 및 상기 데이터 영역에 대한 정보에 상응하는 플래그를 저장하는 플래그 영역을 포함하는 복수의 페이지들을 포함하는 불휘발성 메모리 장치의 독출 방법에서,
    상기 복수의 워드 라인들 중의 선택 워드 라인에 제1 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 워드 라인에 연결되는 선택 페이지에 저장된 상기 데이터 및 상기 플래그에 상응하는 제1 센싱 데이터 및 제1 센싱 플래그를 생성하는 단계;
    상기 선택 워드 라인에 제2 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 페이지에 저장된 상기 데이터에 상응하는 제2 센싱 데이터를 생성하는 동작 및 상기 제1 센싱 플래그에 대해 에러 체크 및 정정 동작을 수행하여 독출 플래그를 생성하는 동작을 동시에 수행하는 단계;
    상기 제1 센싱 데이터와 상기 제2 센싱 데이터에 대해 산술 연산을 수행하여 판정 데이터를 생성하는 단계;
    상기 판정 데이터에 포함되는 제1 논리 레벨을 갖는 비트들의 개수를 카운트하여 카운트값을 생성하는 단계;
    상기 독출 플래그에 기초하여 상기 카운트값을 보정하여 보정된 카운트값을 생성하고, 상기 보정된 카운트값에 기초하여 시프트 전압을 결정하는 단계; 및
    상기 선택 워드 라인에 상기 제1 독출 전압이 상기 시프트 전압만큼 시프트된 전압에 상응하는 제3 독출 전압을 인가한 후, 상기 복수의 비트 라인들을 센싱하여 상기 선택 페이지에 저장된 상기 데이터에 상응하는 독출 데이터를 생성하는 단계를 포함하는 불휘발성 메모리 장치의 독출 방법.
  10. 제9 항에 있어서, 상기 제1 센싱 데이터 및 상기 제1 센싱 플래그는 각각 데이터 래치 및 플래그 래치에 동시에 래치되고,
    상기 데이터 래치에 래치된 상기 제1 센싱 데이터 및 상기 플래그 래치에 래치된 상기 제1 센싱 플래그는 각각 데이터 캐시 래치 및 플래그 캐시 래치에 동시에 래치되고,
    상기 제2 센싱 데이터를 상기 데이터 래치에 래치하는 동작과 상기 플래그 캐시 래치에 래치된 상기 제1 센싱 플래그에 대해 에러 체크 및 정정 동작을 수행하여 상기 독출 플래그를 생성하는 동작은 동시에 수행되는 불휘발성 메모리 장치의 독출 방법.
KR1020160056818A 2016-05-10 2016-05-10 불휘발성 메모리 장치의 독출 방법 KR102422478B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020160056818A KR102422478B1 (ko) 2016-05-10 2016-05-10 불휘발성 메모리 장치의 독출 방법
US15/435,389 US10108370B2 (en) 2016-05-10 2017-02-17 Methods of reading nonvolatile memory devices
CN201710320596.7A CN107403636B (zh) 2016-05-10 2017-05-09 读取非易失性存储设备的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160056818A KR102422478B1 (ko) 2016-05-10 2016-05-10 불휘발성 메모리 장치의 독출 방법

Publications (2)

Publication Number Publication Date
KR20170126595A KR20170126595A (ko) 2017-11-20
KR102422478B1 true KR102422478B1 (ko) 2022-07-19

Family

ID=60295146

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160056818A KR102422478B1 (ko) 2016-05-10 2016-05-10 불휘발성 메모리 장치의 독출 방법

Country Status (3)

Country Link
US (1) US10108370B2 (ko)
KR (1) KR102422478B1 (ko)
CN (1) CN107403636B (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102353363B1 (ko) * 2017-08-14 2022-01-20 에스케이하이닉스 주식회사 메모리 시스템의 동작 방법
KR102556459B1 (ko) * 2017-12-20 2023-07-18 에스케이하이닉스 주식회사 메모리 장치 및 메모리 컨트롤러를 포함하는 메모리 시스템, 및 그의 라이트 동작방법
KR102392056B1 (ko) * 2017-12-27 2022-04-28 삼성전자주식회사 메모리 장치의 데이터 독출 방법, 메모리 컨트롤러의 제어 방법 및 이들을 포함하는 저장 장치
KR102470726B1 (ko) * 2018-03-14 2022-11-25 삼성전자주식회사 비휘발성 메모리 장치
JP2019169209A (ja) * 2018-03-22 2019-10-03 東芝メモリ株式会社 メモリデバイス
CN110838331A (zh) * 2018-08-17 2020-02-25 北京兆易创新科技股份有限公司 一种存储数据的读取方法及装置
KR20200134570A (ko) * 2019-05-22 2020-12-02 에스케이하이닉스 주식회사 반도체 메모리 장치
US12009034B2 (en) 2020-03-02 2024-06-11 Micron Technology, Inc. Classification of error rate of data retrieved from memory cells
US11086572B1 (en) * 2020-03-02 2021-08-10 Micron Technology, Inc. Self adapting iterative read calibration to retrieve data from memory cells
KR20210146637A (ko) * 2020-05-27 2021-12-06 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
DE102021129662A1 (de) 2021-03-24 2022-09-29 Samsung Electronics Co., Ltd. Betriebsverfahren eines speichercontrollers unter verwendudng eines zählwerts eines speicherdirektzugriffs, speichervorrichtung mit speichercontroller, und betriebsverfahren einer speichervorrichtung
KR20220140052A (ko) 2021-04-08 2022-10-18 삼성전자주식회사 히스토리 테이블을 사용하는 스토리지 컨트롤러의 동작 방법, 및 스토리지 컨트롤러를 포함하는 스토리지 장치
US11989091B2 (en) * 2021-11-12 2024-05-21 Samsung Electronics Co., Ltd. Memory system for performing recovery operation, memory device, and method of operating the same

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0172366B1 (ko) 1995-11-10 1999-03-30 김광호 불휘발성 반도체 메모리 장치의 독출 및 프로그램 방법과 그 회로
JP5367210B2 (ja) 2006-01-20 2013-12-11 株式会社東芝 半導体記憶装置
US7917685B2 (en) 2006-05-04 2011-03-29 Micron Technology, Inc. Method for reading a multilevel cell in a non-volatile memory device
JP4945187B2 (ja) * 2006-07-31 2012-06-06 株式会社東芝 半導体記憶装置
KR101226685B1 (ko) 2007-11-08 2013-01-25 삼성전자주식회사 수직형 반도체 소자 및 그 제조 방법.
KR20100022229A (ko) * 2008-08-19 2010-03-02 주식회사 하이닉스반도체 불휘발성 메모리 소자 및 그 동작 방법
KR20100065505A (ko) 2008-12-08 2010-06-17 주식회사 하이닉스반도체 불휘발성 메모리 장치의 캐쉬리드 방법
JP2010218637A (ja) 2009-03-17 2010-09-30 Toshiba Corp 半導体記憶装置およびその制御方法
US8365030B1 (en) * 2009-03-30 2013-01-29 Samsung Electronics Co., Ltd. Nonvolatile memory devices and error correction methods thereof
KR20100117906A (ko) 2009-04-27 2010-11-04 주식회사 하이닉스반도체 비휘발성 메모리 소자 및 그 구동 방법
JP2011054249A (ja) 2009-09-02 2011-03-17 Toshiba Corp 半導体記憶装置
KR101678909B1 (ko) * 2009-09-17 2016-11-23 삼성전자주식회사 플래시 메모리 시스템 및 그것의 소거 리프레쉬 방법
KR20110092090A (ko) * 2010-02-08 2011-08-17 삼성전자주식회사 불 휘발성 메모리 장치 및 그것을 포함한 메모리 시스템
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
US8565022B2 (en) * 2010-07-09 2013-10-22 Hynix Semiconductor Inc. Memory system and method of operating the same
KR101703279B1 (ko) * 2010-08-05 2017-02-06 삼성전자 주식회사 플래시 메모리 장치 및 플래시 메모리 장치의 독출 방법
KR101682666B1 (ko) 2010-08-11 2016-12-07 삼성전자주식회사 비휘발성 메모리 장치, 그것의 채널 부스팅 방법, 그것의 프로그램 방법 및 그것을 포함하는 메모리 시스템
US9135998B2 (en) 2010-11-09 2015-09-15 Micron Technology, Inc. Sense operation flags in a memory device
KR101893143B1 (ko) * 2011-03-16 2018-08-31 삼성전자주식회사 비휘발성 메모리 장치, 그것의 프로그램 방법 및 읽기 방법, 및 그것을 포함하는 메모리 시스템
US8456911B2 (en) * 2011-06-07 2013-06-04 Sandisk Technologies Inc. Intelligent shifting of read pass voltages for non-volatile storage
KR101878455B1 (ko) 2011-11-18 2018-07-16 삼성전자주식회사 비휘발성 메모리 장치의 데이터 독출 방법 및 구동 방법
KR101939234B1 (ko) * 2012-07-23 2019-01-16 삼성전자 주식회사 메모리 장치, 메모리 시스템 및 상기 메모리 장치의 독출 전압의 제어 방법
KR101985952B1 (ko) * 2012-08-27 2019-06-05 에스케이하이닉스 주식회사 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 구동 방법
KR102050896B1 (ko) * 2013-02-19 2019-12-02 삼성전자주식회사 메모리 컨트롤러 및 그것의 동작 방법
JP2014186783A (ja) 2013-03-25 2014-10-02 Toshiba Corp 半導体記憶装置
CN105471824A (zh) * 2014-09-03 2016-04-06 阿里巴巴集团控股有限公司 实现浏览器调用本地业务组件的方法、装置及系统

Also Published As

Publication number Publication date
CN107403636B (zh) 2022-09-20
US20170329556A1 (en) 2017-11-16
US10108370B2 (en) 2018-10-23
CN107403636A (zh) 2017-11-28
KR20170126595A (ko) 2017-11-20

Similar Documents

Publication Publication Date Title
KR102422478B1 (ko) 불휘발성 메모리 장치의 독출 방법
KR102302187B1 (ko) 비휘발성 메모리 장치의 동작 방법 및 비휘발성 메모리 장치
KR101893143B1 (ko) 비휘발성 메모리 장치, 그것의 프로그램 방법 및 읽기 방법, 및 그것을 포함하는 메모리 시스템
KR102238592B1 (ko) 비휘발성 메모리 장치의 디폴트 독출 전압 설정 방법 및 비휘발성 메모리 장치의 데이터 독출 방법
KR102294127B1 (ko) 누설 전류 감지 장치 및 이를 포함하는 비휘발성 메모리 장치
KR102252692B1 (ko) 누설 전류 감지 장치 및 이를 포함하는 비휘발성 메모리 장치
KR20180064088A (ko) 메모리 제어 장치 및 방법
TWI610170B (zh) 半導體記憶體裝置、其讀取方法以及具有該半導體記憶體裝置的資料儲存裝置
US11681554B2 (en) Logical address distribution in multicore memory system
KR102359979B1 (ko) 솔리드 스테이트 드라이브 장치 및 이를 포함하는 저장 시스템
KR102294352B1 (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법과 독출 방법
KR20100137128A (ko) 비휘발성 메모리 장치의 프로그램 방법, 비휘발성 메모리 장치 및 비휘발성 메모리 시스템
KR102178141B1 (ko) 비휘발성 메모리 장치의 동작 방법
KR20100107291A (ko) 불휘발성 메모리 장치 및 그것의 프로그램 전압 생성방법
US20130061113A1 (en) Method of correcting errors and memory device using the same
KR20110065897A (ko) 플래시 메모리 장치, 이를 포함하는 플래시 메모리 시스템 및 이의 프로그램 방법
KR102182804B1 (ko) 메모리 장치의 독출 방법
US9478295B2 (en) Non-volatile memory device and related method of operation
KR20210108712A (ko) 메모리 시스템 및 그것의 동작방법
US20130318419A1 (en) Flash memory system including read counter logic
US20210303715A1 (en) Data scrambler for memory systems and method thereof
KR20180032426A (ko) 반도체 메모리 장치 및 그 동작 방법
KR102110844B1 (ko) 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 프로그램 방법
US11502703B2 (en) Descrambler for memory systems and method thereof
KR20230163847A (ko) 신드롬 가중치를 기초로 신뢰성 데이터를 결정하는 컨트롤러 및 그 동작 방법

Legal Events

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