CN110827906B - 存储器系统及其操作方法 - Google Patents

存储器系统及其操作方法 Download PDF

Info

Publication number
CN110827906B
CN110827906B CN201910602119.9A CN201910602119A CN110827906B CN 110827906 B CN110827906 B CN 110827906B CN 201910602119 A CN201910602119 A CN 201910602119A CN 110827906 B CN110827906 B CN 110827906B
Authority
CN
China
Prior art keywords
word line
memory
read
erased
data
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201910602119.9A
Other languages
English (en)
Other versions
CN110827906A (zh
Inventor
金永东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Hynix Inc
Original Assignee
SK Hynix Inc
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 SK Hynix Inc filed Critical SK Hynix Inc
Publication of CN110827906A publication Critical patent/CN110827906A/zh
Application granted granted Critical
Publication of CN110827906B publication Critical patent/CN110827906B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • 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/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • G11C16/3445Circuits or methods to verify correct erasure of nonvolatile memory cells
    • 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/1012Adding 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 codes or arrangements adapted for a specific type of error
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • 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
    • 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/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing 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/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/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • 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/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
    • 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/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • G06F2212/1036Life time enhancement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling
    • 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
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/563Multilevel memory reading aspects
    • G11C2211/5632Multilevel reading using successive approximation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/12Reading and writing aspects of erasable programmable read-only memories
    • G11C2216/22Nonvolatile memory in which reading can be carried out from one memory bank or array whilst a word or sector in another bank or array is being erased or programmed simultaneously
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明涉及一种存储器系统的操作方法,包括:使用包括第一读取电压的读取电压组,对与读取命令相对应的字线执行第一读取操作;根据对通过第一读取操作读取的数据的错误校正是否失败,使用大于第一读取电压的第二读取电压对字线执行第二读取操作;并且根据作为第二读取操作的结果,该字线是否被确定为擦除字线,将包括与该字线联接的存储器单元的存储块确定为关闭存储块。

Description

存储器系统及其操作方法
相关申请的交叉引用
本申请要求于2018年8月10日提交的申请号为10-2018-0093814的韩国专利申请的优先权,其整体通过引用并入本文。
技术领域
各个实施例涉及一种存储器系统,更具体地,涉及一种包括存储器装置的存储器系统及其操作方法。
背景技术
计算机环境范例已经转变成能够随时随地使用计算系统的普适计算。因此,诸如移动电话、数码相机和膝上型计算机的便携式电子装置的使用已经迅速增加。这些便携式电子装置通常使用具有一个或多个存储器装置的存储器系统来存储数据。存储器系统可用作便携式电子装置的主存储器装置或辅助存储器装置。
因为存储器系统不具有移动部件,所以存储器系统提供诸如以下的优点:优异的稳定性、耐用性、高信息访问速度和低功耗。具有这些优点的存储器系统的示例包括通用串行总线(USB)存储器装置、具有各种接口的存储卡以及固态驱动器(SSD)。
发明内容
各个实施例涉及一种能够通过准确地确定擦除字线来提高性能和可靠性的存储器系统及其操作方法。
在实施例中,一种存储器系统的操作方法可以包括:使用包括第一读取电压的读取电压组,对与读取命令相对应的字线执行第一读取操作;根据对通过第一读取操作读取的数据的错误校正是否失败,使用大于第一读取电压的第二读取电压对字线执行第二读取操作;并且根据作为第二读取操作的结果,该字线是否被确定为擦除字线,将包括与该字线联接的存储器单元的存储块确定为关闭存储块。
在实施例中,一种存储器系统的操作方法可以包括:当在突然断电(SPO)后存储器系统被通电时,通过重复确定包括在开放存储块中的每个字线是否为擦除字线来执行搜索擦除字线的开放块扫描操作;以及对擦除字线执行修复操作,其中确定字线是否为擦除字线包括:通过向字线施加第一读取电压来执行第一读取操作;根据作为第一读取操作的结果,包括在字线中的擦除单元的数量,通过施加大于第一读取电压的第二读取电压来执行第二读取操作;并且根据第二读取操作的结果,确定字线是擦除字线。
在实施例中,一种存储器系统可以包括:存储器装置,适用于存储数据;以及控制器,适用于控制存储器装置,其中控制器包括擦除确定器,适用于确定对应于读取命令的字线是否为擦除字线,其中擦除确定器根据对通过使用包括第一读取电压的读取电压组的第一读取操作读取的数据的错误校正是否失败,通过使用大于第一读取电压的第二读取电压执行第二读取操作,确定字线是否为擦除字线。
在实施例中,一种存储器系统可以包括:存储器装置,适用于存储数据;以及控制器,适用于控制存储器装置,其中控制器包括擦除确定器,适用于确定对应于读取命令的字线是否为擦除字线,其中擦除确定器根据通过使用第一读取电压的第一读取操作读取的字线中包括的擦除单元的数量,通过使用大于第一读取电压的第二读取电压执行第二读取操作,确定字线是否为擦除字线。
在实施例中,一种存储器系统可以包括:存储器装置,适用于存储数据;以及控制器,适用于控制存储器装置,其中控制器适用于:响应于读取请求,使用第一读取电压对字线执行第一读取操作;对由第一读取操作读取的数据执行错误校正;当对读取的数据的错误校正失败时,使用大于第一读取电压的第二读取电压对字线执行第二读取操作;基于联接到字线的存储器单元之中的擦除存储器单元的数量来确定字线是否为擦除字线;并且对包括擦除字线的存储块执行干扰处理操作。
附图说明
图1是示出包括根据本发明的实施例的存储器系统的数据处理系统的框图。
图2是示出包括根据实施例的存储器系统的数据处理系统的框图。
图3是示出在图2的存储器系统中采用的存储器装置的示意图。
图4是示出图2所示的存储器装置中的存储块的存储器单元阵列的示例性配置的电路图。
图5是示出存储器系统的阈值电压分布的示图。
图6是示出存储器系统的常规读取操作的流程图。
图7是示出存储器系统的阈值电压分布的示图。
图8是示出存储器系统的常规开放存储块扫描操作的流程图。
图9是示出根据实施例的控制器的框图。
图10至图12是示出根据实施例的存储器系统的读取操作的流程图。
图13示出根据实施例的控制器。
图14至图16B是示出根据实施例的存储器系统的读取操作的示图和流程图。
图17至图25是示意性地示出根据本发明的各个实施例的数据处理系统的应用示例的示图。
具体实施方式
将参照附图详细地描述各个实施例。以下描述关注于理解根据本实施例的操作所需的部分;省略对公知技术信息的描述,以免不必要地模糊本实施例的方面和特征。
在整个说明书中,对“实施例”、“另一实施例”等的参考不一定仅针对一个实施例,并且对任意这种短语的不同参考不一定针对相同的实施例。
图1示意性地示出包括根据实施例的存储器系统的数据处理系统100。
参照图1,数据处理系统100可以包括主机装置102和存储器系统110。存储器系统110可以响应于主机102的请求在存储器系统110中存储数据或输出所存储的数据。
存储器系统110可以包括存储数据的存储器装置150和控制存储器装置150的控制器130。存储器装置150可以包括非易失性存储器装置。存储器装置150可以包括多个存储器单元。将参照图4详细描述存储器装置150。
控制器130可响应于主机102的请求来控制存储器装置150。例如,控制器130可以通过响应于主机102的写入请求向存储器装置150提供写入命令、地址和数据来处理写入请求。又例如,控制器130可以通过响应于主机102的读取请求向存储器装置150提供读取命令和地址来处理读取请求,并且将从存储器装置150读取的数据提供至主机102。
当存储器装置150对特定存储器单元重复执行读取操作时,相邻存储器单元的阈值电压可能由于干扰而改变。将参照图5至图7详细描述该现象。由于干扰,处于擦除状态的存储器单元,即已擦除单元,可能被读取为处于编程状态的存储器单元,即已编程单元。由于干扰,擦除字线可能被读取为编程字线。
控制器130可以包括擦除确定器146。
擦除确定器146可以根据从存储器装置150读取的数据中包括的擦除位的数量来确定响应于读取命令而读取的字线是否被擦除。通过响应于读取命令将第一读取电压施加到字线,可以从存储器装置150读取数据。
根据擦除位的数量,擦除确定器146可以控制存储器装置150使用下面将描述的第二读取电压来对字线执行第二读取操作。进一步地,擦除确定器146可以根据通过第二读取操作读取的数据中的擦除位的数量来确定字线是否被擦除。
图2是示出根据本发明的实施例的数据处理系统100的框图。
参照图2,数据处理系统100可包括被可操作地联接至存储器系统110的主机102。
主机102可包括诸如移动电话、MP3播放器和膝上型计算机的各种便携式电子装置中的任意一种或诸如台式计算机、游戏机、电视(TV)和投影仪的各种非便携式电子装置中的任意一种。
主机102可包括至少一个操作系统(OS),OS可管理和控制主机102的全部功能和操作,并且使用数据处理系统100或存储器系统110来提供主机102和用户之间的操作。OS可支持与用户的使用目的和用途相对应的功能和操作。例如,根据主机102的移动性,OS可被划分为通用OS和移动OS。根据用户的环境,通用OS可被分为个人OS和企业OS。例如,被配置为支持向一般用户提供服务的功能的个人OS可包括Windows和Chrome,并且被配置为确保和支持高性能的企业OS可包括Windows服务器、Linux和Unix。此外,被配置为支持向用户提供移动服务的功能和系统的省电功能的移动OS可包括Android、iOS和Windows Mobile。主机102可包括多个OS,并且运行OS以对存储器系统110执行与用户请求相对应的操作。
存储器系统110可响应于主机102的请求操作,以存储用于主机102的数据。存储器系统110的非限制性示例包括固态驱动器(SSD)、多媒体卡(MMC)、安全数字(SD)卡、通用串行总线(USB)装置、通用闪存(UFS)装置、紧凑型闪存(CF)卡、智能媒体卡(SMC)、个人计算机存储卡国际协会(PCMCIA)卡和记忆棒。MMC可包括嵌入式MMC(eMMC)、尺寸减小的MMC(RS-MMC)和/或微型-MMC。SD卡可包括迷你-SD卡和/或微型-SD卡。
存储器系统110可通过各种类型存储装置中的任意一种来实施。这种存储装置的示例包括但不限于诸如动态随机存取存储器(DRAM)和静态RAM(SRAM)的易失性存储器装置和诸如只读存储器(ROM)、掩模ROM(MROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、铁电RAM(FRAM)、相变RAM(PRAM)、磁阻RAM(MRAM)、电阻式RAM(RRAM或ReRAM)和闪速存储器的非易失性存储器装置。闪速存储器可具有三维(3D)堆叠结构。
存储器系统110可包括控制器130和存储器装置150。存储器装置150可存储用于主机102的数据,并且控制器130可控制将数据存储到存储器装置150中。
控制器130和存储器装置150可被集成到单个半导体装置中,单个半导体装置可被包括在如上所例示的各种类型的存储器系统中的任意一种中。例如,控制器130和存储器装置150可集成为一个半导体装置来构成固态驱动器(SSD)。当存储器系统110用作SSD时,可提高连接至存储器系统110的主机102的操作速度。在另一示例中,控制器130和存储器装置150可被集成为一个半导体装置以构成诸如以下的存储卡:个人计算机存储卡国际协会(PCMCIA)卡、紧凑型闪存卡(CF)、智能媒体(SM)卡、记忆棒、包括尺寸减小的MMC(RS-MMC)和微型-MMC的多媒体卡(MMC)、包括迷你-SD、微型-SD和SDHC的安全数字(SD)卡或通用闪存(UFS)装置。
存储器系统110的非限制性应用示例包括计算机、超移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、网络平板、平板计算机、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、便携式游戏机、导航系统、黑盒、数码相机、数字多媒体广播(DMB)播放器、3维电视、智能电视、数字音频记录器、数字音频播放器、数字图片记录器、数字图片播放器、数字视频记录器、数字视频播放器、构成数据中心的存储装置、能够在无线环境下传输/接收信息的装置、构成家庭网络的各种电子装置中的一个、构成计算机网络的各种电子装置中的一个、构成远程信息处理网络的各种电子装置中的一个、射频识别(RFID)装置或构成计算系统的各种部件中的一个。
存储器装置150可以是非易失性存储器装置,并且即使不供电也可保留所存储的数据。存储器装置150可通过写入操作来存储从主机102提供的数据,并且通过读取操作将所存储的数据提供至主机102。存储器装置150可包括多个存储块152、154、156……,多个存储块152、154、156……中的每一个可包括多个页面,并且多个页面中的每一个可包括联接到字线的多个存储器单元。在实施例中,存储器装置150可以是闪速存储器。闪速存储器可具有三维(3D)堆叠结构。
由于稍后将参照图3至图4详细描述存储器装置150的结构,因此此处省略了对其的进一步描述。
控制器130可响应于来自主机102的请求来控制存储器装置150。例如,控制器130可将从存储器装置150读取的数据提供给主机102,并将从主机102提供的数据存储至存储器装置150中。对于该操作,控制器130可控制存储器装置150的读取操作、写入操作、编程操作和擦除操作。
控制器130可包括主机接口(I/F)132、处理器134、错误校正码(ECC)部件138、电源管理单元(PMU)140、诸如NAND闪速控制器(NFC)的存储器I/F 142以及存储器144,其全部通过内部总线可操作地联接。
主机接口132可以被配置为处理主机102的命令和数据。主机接口132可以通过诸如以下的各种接口协议中的一种或多种与主机102通信:通用串行总线(USB)、多媒体卡(MMC)、高速外围组件互连(PCI-e或PCIe)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、串行高级技术附件(SATA)、并行高级技术附件(PATA)、增强型小型磁盘接口(ESDI)和电子集成驱动器(IDE)。
ECC部件138可检测并且校正从存储器装置150读取的数据中包含的错误。换言之,ECC部件138可通过在ECC编码处理期间使用的ECC码来对从存储器装置150读取的数据进行错误校正解码处理。根据错误校正解码处理的结果,ECC组件138可输出信号,例如错误校正成功/失败信号。当错误位的数量大于可校正错误位的阈值时,ECC部件138可不校正错误位,而可输出错误校正失败信号。
ECC部件138可通过诸如低密度奇偶校验(LDPC)码、博斯-查德胡里-霍昆格姆(Bose-Chaudhuri-Hocquenghem,BCH)码、涡轮码、里德-所罗门(Reed-Solomon,RS)码、卷积码、递归系统码(RSC)、网格编码调制(TCM)和分组编码调制(BCM)的编码调制来执行错误校正。然而,ECC部件138不限于任意特定的错误校正技术或结构。ECC部件138可包括用于合适的错误校正的任意和所有电路、模块、系统或装置。
PMU 140可提供和管理控制器130的电力。
存储器I/F 142可用作用于将控制器130和存储器装置150接口连接的存储器/存储接口,使得控制器130响应于来自主机102的请求来控制存储器装置150。当存储器装置150是闪速存储器或具体地是NAND闪速存储器时,存储器I/F 142可在处理器134的控制下生成用于存储器装置150的控制信号并处理待被提供至存储器装置150的数据。存储器I/F142可用作用于在控制器130和存储器装置150之间处理命令和数据的接口(例如,NAND闪存接口)。具体地,存储器I/F 142可支持控制器130和存储器装置150之间的数据传输。
存储器144可用作存储器系统110和控制器130的工作存储器,并且存储用于驱动存储器系统110和控制器130的数据。控制器130可响应于来自主机102的请求控制存储器装置150执行读取操作、写入操作、编程操作和擦除操作。控制器130可将从存储器装置150读取的数据提供给主机102并可将从主机102提供的数据存储到存储器装置150中。存储器144可存储控制器130和存储器装置150执行这些操作所需的数据。
存储器144可通过易失性存储器来实施。例如,存储器144可通过静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)来实施。存储器144可设置在控制器130的内部或外部。图1例示了设置在控制器130的内部的存储器144。在实施例中,存储器144可通过具有在存储器144和控制器130之间传输数据的存储器接口的外部易失性存储器来实施。
处理器134可控制存储器系统110的全部操作。处理器134可驱动固件以控制存储器系统110的全部操作。固件可被称为闪存转换层(FTL)。而且,处理器134可被实现为微处理器或中央处理单元(CPU)。
例如,控制器130可通过处理器134在存储器装置150中执行由主机102请求的操作,其中处理器134被实现为微处理器或CPU。换言之,控制器130可执行与从主机102或其它来源接收的命令相对应的命令操作。控制器130可执行前台操作作为与从主机102接收到的命令相对应的命令操作。例如,控制器130可执行对应于写入命令的编程操作、对应于读取命令的读取操作、对应于擦除命令的擦除操作以及对应于设置参数命令或设置特征命令的参数设置操作。
而且,控制器130可通过处理器134对存储器装置150执行后台操作,其中处理器134被实现为微处理器或CPU。对存储器装置150执行的后台操作可包括:将存储在存储器装置150的存储块152至156之中的一些存储块中的数据复制到其它存储块中并对其进行处理的操作,例如垃圾收集(GC)操作;在选择的存储块之间交换数据的操作,例如损耗均衡(WL)操作;将存储在控制器130中的映射数据存储在存储块152至156中的操作,例如映射清除(flush)操作;或者管理存储器装置150的坏块的操作,例如在存储块152至156之中检测并处理坏块的坏块管理操作。
在实施例中,参照图1描述的擦除确定器146可以通过参照图2描述的、包括在控制器130中的处理器134和存储器144来实施。
参照图3至图4详细描述根据本发明的实施例的存储器系统的存储器装置。
图3是示出根据本发明的实施例的例如图1的存储器装置150的存储器装置的示意图。图4是示出存储器装置150中的存储块的存储器单元阵列的示例性配置的电路图。
参照图3,存储器装置150可包括多个存储块BLOCK0(210)、BLOCK1(220)、BLOCK2(230)和BLOCKN-1(240)。存储块210、220、230和240中的每一个可包括多个页面,例如2M个页面,页面的数量可根据电路设计而变化。例如,在一些应用中,存储块中的每一个可包括M个页面。页面中的每一个可包括联接到多个字线WL的多个存储器单元。
存储块中的存储器单元可以是存储1位数据的单层单元(SLC)存储块和/或存储2位或更多位数据的多层单元(MLC)存储块中的任意一个。SLC存储块可包括由在一个存储器单元中存储一位数据的存储器单元实现的多个页面。SLC存储块可具有较快的数据操作性能和高耐用性。另一方面,MLC存储块可包括由在一个存储器单元中存储多位数据,例如两位或更多位数据的存储器单元实现的多个页面。MLC存储块可具有比SLC存储块更大的数据存储空间。换言之,MLC存储块可被高度集成。特别地,存储器装置150不仅可包括每一个包括由在一个存储器单元中能够存储两位数据的存储器单元实现的多个页面的MLC存储块,而且还包括诸如三层单元(TLC)存储块、四层单元(QLC)存储块和/或更多层单元存储块的其它类型的MLC存储块,其中TLC存储块中的每一个包括由在一个存储器单元中能够存储三位数据的存储器单元实现的多个页面,QLC存储块中的每一个包括由在一个存储器单元中能够存储四位数据的存储器单元实现的多个页面,和/或更多层单元存储块中的每一个包括由在一个存储器单元中能够存储五位或更多位数据的存储器单元实现的多个页面。
根据本发明的实施例,存储器装置150被描述为非易失性存储器,诸如闪速存储器,例如NAND闪速存储器。然而,存储器装置150可被实现为以下中的任意一种:相变随机存取存储器(PCRAM)、电阻式随机存取存储器(RRAM或ReRAM)、铁电随机存取存储器(FRAM)、自旋转移扭矩磁性随机存取存储器(STT-RAM或STT-MRAM)。
存储块210、220、230和240可通过编程操作来存储从主机102传输的数据,并且通过读取操作来将所存储的数据传输到主机102。
参照图4,示出可与存储器系统110的存储器装置150中包括的多个存储块152至156中的任意一个相对应的存储块330。存储块330可包括联接到多个对应位线BL0至BLm-1的多个单元串340。每列单元串340可包括一个或多个漏极选择晶体管DST和一个或多个源极选择晶体管SST。多个存储器单元MC0至MCn-1可被串联联接在漏极选择晶体管DST和源极选择晶体管SST之间。在实施例中,存储器单元晶体管MC0至MCn-1中的每一个可通过能够存储多位数据信息的MLC来实施。单元串340中的每一个可被电联接到多个位线BL0至BLm-1中的对应位线。例如,如图4所示,第一单元串被联接到第一位线BL0,最后单元串被联接到最后位线BLm-1。作为参考,在图4中,“DSL”表示漏极选择线,“SSL”表示源极选择线,“CSL”表示公共源极线。
虽然图4示出NAND闪速存储器单元,但是本发明不限于此。注意的是,存储器单元可以是NOR闪速存储器单元或者包括其中组合了两个或更多个类型存储器单元的混合闪速存储器单元。而且,注意的是,存储器装置150可以是包括作为电荷存储层的导电浮栅的闪速存储器装置,或者是包括作为电荷存储层的绝缘层的电荷撷取闪速(CTF)存储器装置。
存储器装置150可进一步包括提供字线电压的电压供给装置310,字线电压包括根据操作模式供应至字线的编程电压、读取电压和通过电压。电压供给装置310的电压生成操作可由控制电路(未示出)来控制。在控制电路的控制下,电压供给装置310可选择存储器单元阵列的存储块(或扇区)中的一个,选择所选择的存储块的字线中的一个,并且根据需要将字线电压提供给所选择的字线和未选择的字线。
存储器装置150可包括由控制电路控制的读取和写入(读取/写入)电路320。在验证/正常读取操作期间,读取/写入电路320可用作用于从存储器单元阵列读取数据的读出放大器。在编程操作期间,读取/写入电路320可用作根据待被存储在存储器单元阵列中的数据而驱动位线的写入驱动器。在编程操作期间,读取/写入电路320可从缓冲器(未示出)接收待被存储到存储器单元阵列中的数据,并根据接收的数据驱动位线。读取/写入电路320可包括分别对应于列(或位线)或列对(或位线对)的多个页面缓冲器(PB)322至326,并且页面缓冲器322至326中的每一个可包括多个锁存器(未示出)。
存储器装置150可以利用二维或三维存储器装置实施。存储器装置150中的每个存储块330可以包括沿第二方向延伸的多个NAND串,以及沿第一方向和第三方向延伸的多个NAND串。NAND串中的每一个可以联接到位线、一个或多个串选择线、一个或多个接地选择线、多个字线、一个或多个虚设字线和公共源极线,并且包括多个晶体管结构。
图5示出图1和图2的存储器系统110的阈值电压分布。
参照图5,由于多个存储器单元之间的电学特性的微小差异,具有相同的被编程数据的存储器单元的阈值电压可以在阈值电压分布范围内。例如,当编程多层单元(MLC)时,MLC可以具有三个编程状态P1至P3和一个擦除状态E中的任意一个。图5示出MLC的理想分布,其中阈值电压分布彼此不重叠,但是每个具有读取电压裕度范围。
电压供给装置310可以将第一读取电压组Vread1、Vread1’和Vread1”施加到字线,使得联接到字线的各个存储器单元的阈值电压状态可以被区分以读取数据。
例如,当将作为第一读取电压组的最低读取电压的第一读取电压Vread1施加到与MLC联接的字线时,电流可以流过与具有擦除状态E的存储器单元联接的位线,并且没有电流可以流过与具有编程状态P1、P2或P3的存储器单元联接的位线。因此,可以通过读取操作清楚地区分擦除状态E和编程状态P1至P3。
图6是示出存储器系统的常规读取操作的流程图。
存储器系统可以包括存储器装置和控制存储器装置执行读取操作的控制器。
在步骤S602中,为了执行读取操作,控制器的处理器向存储器装置提供读取命令CMD和读取地址ADDR。
在步骤S604中,存储器装置响应于读取命令,通过将读取电压施加到对应于读取地址的字线来读取数据。存储器装置将读取数据提供至控制器。
在步骤S606中,处理器通过参考读取数据来确定联接到字线的存储器单元中的擦除单元的数量是否超过阈值。
当擦除单元的数量(即,擦除单元的#)超过阈值(在步骤S606中为“Y”)时,在步骤S608中处理器输出擦除信号。
当擦除单元的数量小于或等于阈值(在步骤S606中为“N”)时,在步骤S610中控制器中的ECC单元可以对读取数据执行错误校正。
当错误校正成功(在步骤S610中为“P”)时,在步骤S612中ECC单元将校正数据存储在控制器的存储器中。当根据来自主机的请求执行读取操作时,处理器通过主机接口将存储在控制器的存储器中的数据提供至主机。
当错误校正失败(在步骤S610中为“F”)时,在步骤S614中ECC单元向处理器输出读取失败信号。
图7示出存储器系统110的阈值电压分布。
当执行读取操作时,通过电压也可被施加到未选择字线。因此,可能发生干扰以使相邻存储器单元的阈值电压升高。当干扰变得严重到足以显著地改变存储器单元的阈值电压时,存储在相应存储器单元中的数据可能会失真。
开放存储块可以表示其中一些存储器单元被完全编程并且其它存储器单元被擦除的存储块。换句话说,开放存储块可以表示尚未完全编程所有存储器单元的存储块。
当将读取电压重复施加到开放存储块中的特定字线时,相邻擦除单元的阈值电压可能由于干扰而升高。图7示出由于干扰引起的擦除单元的阈值电压分布。
当如图7所示擦除字线受到干扰影响时,在存储器装置150的读取操作期间,一些存储器单元可被读取为编程单元。这是因为联接到擦除字线的一些存储器单元可能由于干扰而具有比第一读取电压Vread1高的阈值电压,并且即使将第一读取电压Vread1施加到字线,也没有电流可以流过分别与这些存储器单元联接的位线。
重新参照图6,当由于干扰而被读取为编程存储器单元的存储器单元的数量超过阈值时,即使字线不是编程字线,但是在步骤S606中处理器也确定字线中的擦除单元的数量小于或等于阈值。根据确定结果,在步骤S610中ECC单元执行错误校正解码。因为字线未被编程,因此由于字线中不存在有效数据,所以错误校正可能失败。
因此,当由于对通过对某个字线执行读取操作所读取的数据的错误校正的失败而发生读取失败时,不可能区分出是相应编程字线发生的读取失败还是相应擦除字线发生的读取失败。这可能劣化存储器系统110的可靠性和性能。
例如,当作为对字线的读取操作的结果,在步骤S614中发生了读取失败时,存储器系统进一步执行读取恢复操作以恢复对应于字线的数据。读取恢复操作可以包括软判决操作和/或读取重试操作。软判决操作和读取重试操作都可以包括通过将读取电压重新施加到相应字线来从存储器装置输出数据的操作和再次对输出数据执行错误校正解码的操作。
当在存储器系统110的逻辑地址和物理地址之间发生映射错误或者执行垃圾收集读取操作时,可能对擦除字线执行读取操作。尽管如参照图7所述发生对从擦除字线读取的数据的读取失败,但是由于字线未被编程,所以不需要恢复读取数据。然而,当对读取数据的错误校正失败时,处理器134可能无条件地对擦除字线执行读取恢复操作。因此,存储器系统110的性能可能劣化。
又例如,当在突然断电之后存储器系统110被通电时,控制器130执行突然断电恢复操作时,可能发生错误。具体地,处理器134可以通过执行开放存储块扫描操作来搜索开放存储块中的第一擦除字线,然后控制存储器装置150对第一擦除字线执行修复操作,例如,虚拟数据编程操作。在这种情况下,如下所述,当受干扰影响的擦除字线被确定为编程字线时,可以对另一字线而不是第一擦除字线执行修复操作。第一擦除字线可以对应于开放存储块中的最终编程字线的下一字线。
图8是示出存储器系统的常规开放存储块扫描操作的流程图。
在步骤S802中,控制器的处理器重置参数(即,K=0),以按字线被编程的顺序读取开放存储块的字线。
在步骤S804中,存储器装置根据处理器的控制对第K字线执行读取操作。然后,存储器装置通过仅将读取电压组中的读取电压之中的最低读取电压施加到第K字线来将数据读取到处理器。
在步骤S806中,处理器基于读取数据来确定存储器单元之中的擦除单元的数量(即,擦除单元的#)是否超过阈值。
当擦除单元的数量不超过阈值(在步骤S806中为“N”)时,在步骤S808中,处理器改变参数的值(即,K=K+1)以对第(K+1)字线执行读取操作。
当擦除单元的数量超过阈值时(在步骤S806中为“Y”)时,在步骤S810中,处理器确定第K字线是第一擦除字线。
如上所述,当擦除单元的数量由于干扰而没有超过阈值时,即使相应字线是擦除字线,但是仅通过步骤S806的确定,处理器也不会确定该字线是擦除字线。因此,处理器将不是第一擦除字线的另一字线确定为第一擦除字线。
因此,根据本实施例,当对通过存储器装置150使用包括第一读取电压Vread1的第一读取电压组对字线的第一读取操作而读取的数据的错误校正失败时,控制器130可以通过将大于第一读取电压Vread1的第二读取电压Vread2施加到相应字线来执行第二读取操作。
在各个实施例中,当对通过存储器装置150使用包括第一读取电压Vread1的第一读取电压组对字线的第一读取操作而读取的数据中的擦除单元的数量不超过阈值时,控制器130可以通过将大于第一读取电压Vread1的第二读取电压Vread2施加到相应字线来执行第二读取操作。
控制器130可以根据作为第二读取操作的结果而被确定为擦除存储器单元的存储器单元的数量来确定相应字线是擦除字线还是编程字线。例如,当作为第二读取操作的结果,存储在页面缓冲器中的位之中、具有例如值“1”的逻辑高值的位的数量超过阈值时,控制器130可以确定相应字线是受干扰影响的擦除字线。
根据本实施例,控制器130可以确定受干扰影响的字线是处于编程状态还是擦除状态。进一步地,控制器130可以根据确定结果执行不同的操作,从而提高存储器系统110的性能和可靠性。
图9示出根据实施例的控制器130。
参照图9,控制器130可以包括擦除确定器146、处理器134、错误校正码(ECC)部件138和存储器接口(I/F)142。尽管未在图9中示出,但是控制器130可以进一步包括已经参照图2描述的主机接口132、PMU 140和存储器144。
擦除确定器146可以包括缓冲器902、擦除位计数器904、确定器906和第二读取控制器908。如参照图2所述,擦除确定器146可以通过总线联接到处理器134、存储器接口142和ECC部件138,并且与处理器134、存储器接口142和ECC部件138进行通信。
缓冲器902可以缓冲从存储器装置150读取的数据。
擦除位计数器904可以通过参考包括在读取数据中的位的值来计数擦除位的数量。
确定器906可以基于擦除位的数量来确定与读取数据相对应的字线是否是擦除字线。确定器906可以基于擦除位的数量来提供用于控制ECC部件138进行错误校正的控制信号或者向处理器134提供擦除信号。擦除信号可以指示字线是擦除字线。
当ECC部件138对读取数据的错误校正失败时,第二读取控制器908可以控制存储器装置150执行第二读取操作以确定字线是擦除字线还是编程字线。
图10是示出根据实施例的例如图2和图9的存储器系统110的存储器系统的读取操作的流程图。
参照图10,在步骤S1002中,处理器134可以向存储器装置150提供第一读取命令CMD和读取地址ADDR。读取地址可以对应于待被读取的页面。
在步骤S1004中,存储器装置150可以响应于第一读取命令,通过将第一读取电压组施加到与读取地址相对应的字线来读取数据。存储器装置150可以将读取数据提供至缓冲器902。第一读取电压组可以包括多个读取电压以区分待被读取的存储器单元的所有阈值电压状态。第一读取电压组可以包括多个读取电压之中的最低读取电压,即用作区分编程状态和擦除状态的参考电压的第一读取电压。
当联接到字线的存储器单元之中的擦除单元的数量不超过阈值时,ECC部件138可以对读取数据执行错误校正。当错误校正失败(或ECC解码失败)时,在步骤S1006中第二读取控制器908可以使用大于第一读取电压的第二读取电压来控制存储器装置150执行第二读取操作。第二读取操作可以表示用于确定字线是擦除字线还是编程字线的读取操作。第二读取电压可以用作用于区分编程状态和擦除状态的参考电压。
当第二读取操作的结果指示字线WL是擦除字线时,在步骤S1008中处理器134可以对与该字线相对应的存储块执行干扰处理操作。将参照图11描述干扰处理操作。
图11是示出根据实施例的例如图2和图9的存储器系统110的存储器系统的读取操作的流程图。
参照图11,在步骤S1102中,处理器134可以通过存储器接口142向存储器装置150提供第一读取命令CMD和读取地址ADDR。
在步骤S1104中,存储器装置150可以响应于第一读取命令,通过对与读取地址相对应的字线执行第一读取操作来读取数据。存储器装置150可以将读取数据提供至缓冲器902。
在步骤S1106中,擦除确定器146可以通过参考读取数据来确定包括在字线中的擦除单元的数量(即,擦除单元的#)是否超过阈值。
具体地,擦除位计数器904可以对读取数据中的擦除位的数量进行计数,并将所计数的擦除位的数量提供至确定器906。确定器906可以将擦除位的数量与阈值进行比较,从而确定擦除单元的数量是否超过阈值。
当存储器单元之中的擦除单元的数量(即,擦除单元的#)超过阈值(在步骤S1106中为“Y”)时,在步骤S1108中确定器906可以向处理器134提供擦除信号。擦除信号可以指示字线是擦除字线。
当存储器单元中的擦除单元的数量(即,擦除单元的#)小于或等于阈值(在步骤S1106中为“N”)时,在步骤S1110中确定器906可以向ECC部件138提供控制信号,并且缓冲器902可以将读取数据提供至ECC部件138。ECC部件138可以响应于控制信号来对读取数据执行错误校正。
当错误校正(即,ECC)成功(在步骤S1110中为“P”)时,在步骤S1112中ECC部件138可以将校正数据提供至存储器144。当通过主机的读取请求执行读取操作时,处理器134可以将校正数据提供至主机102。
当错误校正(即,ECC)失败(在步骤S1110中为“F”)时,在步骤S1114中ECC部件138可以向第二读取控制器908提供读取失败信号。第二读取控制器908可以响应于读取失败信号来控制存储器装置150执行第二读取操作。
当存储器装置150通过第二读取操作将存储在页面缓冲器中的数据提供至缓冲器902时,在步骤S1116中擦除确定器146可以确定联接到字线的存储器单元之中的擦除单元的数量是否超过阈值。具体地,擦除位计数器904可以对读取数据中的擦除位的数量进行计数,并将所计数的擦除位的数量提供至确定器906。确定器906可以将擦除位的数量与阈值进行比较,从而确定相应擦除单元的数量是否超过阈值。
当存储器单元之中的擦除单元的数量(即,擦除单元的#)超过阈值时(在步骤S1116中为“Y”),字线可以是擦除字线。因此,在步骤S1118中确定器906可以将擦除信号提供至处理器134。
当数据被编程到受干扰影响的擦除字线时,可能无法保证被编程到该字线的数据的可靠性。因此,在步骤S1122中处理器134可以响应于擦除信号来执行干扰处理操作。
根据本实施例,干扰处理操作可以包括以下操作:关闭包括该字线的存储块,使得数据可不再被编程到该存储块。
根据本实施例,干扰处理操作可以包括以下操作:选择关闭存储块作为牺牲块并执行垃圾收集操作。通过垃圾收集操作,牺牲块的有效数据被移动到目标块。
当存储器单元之中的擦除单元的数量(即,擦除单元的#)小于或等于阈值(在步骤S1116中为“N”)时,这可以指示在第一读取操作期间发生的读取失败是因为编程字线受到干扰的影响。因此,在步骤S1120中确定器906可以向存储器144提供读取失败信号。
在步骤S1124中,处理器134可以响应于读取失败信号来对读取地址执行上述的读取恢复操作。
图12是示出根据实施例的例如图2和图9的存储器系统110的存储器系统的操作的流程图。
参照图12,在步骤S1202中,处理器134可以向存储器装置150提供第一读取命令CMD和读取地址ADDR。
在步骤S1204中,存储器装置150可以通过响应于第一读取命令来对与读取地址相对应的字线执行第一读取操作来读取数据。在步骤S1206中,存储器装置150可以将读取数据提供至控制器130的缓冲器902。
在步骤S1208中,擦除确定器146可以通过参考读取数据来确定包括在字线中的擦除单元的数量(即,擦除单元的#)是否超过阈值。
当擦除单元的数量(即,擦除单元的#)不超过阈值时,在步骤S1210中ECC部件138可以执行错误校正(即,ECC)。
当错误校正失败时,在步骤S1212中第二读取控制器908可以使用大于第一读取电压的第二读取电压来控制存储器装置150执行第二读取操作。
在步骤S1214中,存储器装置150可以通过使用第二读取电压执行第二读取操作来读取数据。在步骤1216中,存储器装置150可以将读取数据提供至控制器130的缓冲器902。
在步骤S1218中,擦除确定器146可以确定联接到与读取地址相对应的字线的存储器单元之中的擦除单元的数量(即,擦除单元的#)是否超过阈值。
当擦除单元的数量(即,擦除单元的#)超过阈值时,擦除确定器146可以将擦除信号提供至处理器134。在这种情况下,在步骤S1220中处理器134可以执行上述的干扰处理操作。
根据本实施例,擦除确定器146可以预先确定被确定为错误校正失败的字线是否为擦除字线,因此不对擦除字线执行无用的读取恢复操作。因此,存储器系统110的性能可以被提高。此外,处理器134可以对受干扰影响的擦除字线执行干扰处理操作,从而提高存储器系统110的可靠性。
图13示出根据实施例的控制器130。
参照图13,控制器130可以包括处理器134、存储器接口(I/F)142和擦除确定器146。尽管未在图13中示出,但是控制器130可以进一步包括已经参照图2进行描述的主机接口132、ECC部件138、PMU 140和存储器144。
擦除确定器146可以包括缓冲器1302、擦除位计数器1304、确定器1306和第二读取控制器1308。如参照图2所述,擦除确定器146可以通过总线联接到处理器134和存储器接口142,并且与处理器134和存储器接口142进行通信。
缓冲器1302可以缓冲从存储器装置150读取的数据。
擦除位计数器1304可以通过参考包括在读取数据中的位的值来计数擦除位的数量。
确定器1306可以基于擦除位的数量来确定与读取数据相对应的字线是否为擦除字线。
第二读取控制器1308可以控制存储器装置150执行第二读取操作,以根据擦除位的数量来确定字线是擦除字线还是编程字线。
图14至图16B是示出根据实施例的例如图2、图3和图13的存储器系统110的存储器系统的开放块扫描操作的流程图和示图。
参照图14,当存储器系统110通电时,在步骤S1402中处理器134可以重置参数(即,K=0)以按照字线被编程的顺序读取开放存储块的字线。
在步骤S1404中,存储器装置150可以响应于处理器134的控制,通过对第K字线执行第一读取操作来读取数据。存储器装置150可以将读取数据提供至缓冲器1302。电压供给装置310可以通过仅施加第一读取电压组中的读取电压之中的第一读取电压来执行第一读取操作。第一读取电压可以对应于第一读取电压组中的最低电压。
在步骤S1406中,擦除确定器146可以通过参考读取数据来确定联接到第K字线的存储器单元之中的擦除单元的数量(即,擦除单元的#)是否超过阈值。
具体地,当擦除位计数器1304对读取数据中的擦除位的数量进行计数并且将计数值提供至确定器1306时,确定器1306可以将计数值与阈值进行比较。
当擦除单元的数量(即,擦除单元的#)超过阈值(在步骤S1406中为“Y”)时,在步骤S1414中确定器1306可以确定第K字线是第一擦除字线。
当擦除单元的数量(即,擦除单元的#)不超过阈值(在步骤S1406中为“N”)时,在步骤S1410中确定器1306可以向第二读取控制器1308提供控制信号。第二读取控制器1308可以响应于控制信号来控制存储器装置150对第K字线执行第二读取操作。存储器装置150可以响应于控制信号,通过将第二读取电压施加到第K字线来读取数据。存储器装置150可以将读取数据提供至缓冲器1302。
在步骤S1412中,擦除确定器146可以通过参考读取数据来确定存储器单元之中的擦除单元的数量(即,擦除单元的#)是否超过阈值。
具体地,当擦除位计数器1304对读取数据中的擦除位的数量进行计数并且将计数值提供至确定器1306时,确定器1306可以将计数值与阈值进行比较。
当擦除单元的数量(即,擦除单元的#)超过阈值(在步骤S1412中为“Y”)时,在步骤S1414中确定器1306可以确定第K字线是第一擦除字线。
当擦除单元的数量(即,擦除单元的#)不超过阈值(在步骤S1412中为“N”)时,确定器1306可以向处理器134提供指示字线被编程的编程信号。进一步,在步骤S1408中,处理器134可以响应于编程信号来改变参数的值(即,K=K+1)以对第(K+1)字线执行读取操作。
在图8中,当步骤S806的确定结果指示擦除单元的数量未超过阈值时,处理器无条件地确定相应字线是编程字线。然而,根据图14的实施例,处理器134可通过第二读取操作来确定相应字线是受干扰影响的擦除字线还是编程字线,从而更准确地找到第一擦除字线。
如参照图14所述,本实施例可以应用于通过按照字线被编程的顺序依次读取字线来搜索和找到第一擦除字线的算法。可选地,开放存储块扫描操作可以下列算法来执行:通过以与字线被编程的顺序相反的顺序读取字线来找到第一编程字线,或者开放存储块扫描操作可以以二进制搜索算法来执行。参照图15、图16A和图16B,显而易见的是,本实施例可以被应用于各种开放存储块扫描操作。
参照图15,当存储器系统110通电时,在步骤S1502中处理器134可以重置参数(即,K=N)以按照字线被编程的相反顺序来读取开放存储块中的字线。
在步骤S1504中,存储器装置150可以响应于处理器134的控制,通过对第K字线执行第一读取操作来读取数据。存储器装置150可以将读取数据提供至缓冲器1302。
在步骤S1506中,擦除确定器146可以通过参考读取数据来确定联接到第K字线的存储器单元之中的擦除单元的数量(即,擦除单元的#)是否超过阈值。
当擦除单元的数量(即,擦除单元的#)超过阈值(在步骤S1506中为“Y”)时,确定器1306可以向处理器134提供擦除信号。进一步地,在步骤S1512中,处理器134可以响应于擦除信号来改变参数的值(即,K=K-1)以对第(K-1)字线执行读取操作。
当擦除单元的数量(即,擦除单元的#)不超过阈值(在步骤S1506中为“N”)时,在步骤S1508中确定器1306可以向第二读取控制器1308提供控制信号。第二读取控制器1308可以响应于控制信号来控制存储器装置150对第K字线执行第二读取操作。存储器装置150可以响应于控制信号,通过将第二读取电压施加到第K字线来读取数据。存储器装置150可以将读取数据提供至缓冲器1302。
在步骤S1510中,擦除确定器146可以通过参考读取数据来确定存储器单元之中的擦除单元的数量(即,擦除单元的#)是否超过阈值。
当擦除单元的数量(即,擦除单元的#)超过阈值(在步骤S1510中为“Y”)时,确定器1306可以向处理器134提供擦除信号。进一步地,在步骤S1512中处理器134可以响应于擦除信号来改变参数的值(即,K=K-1)以对第(K-1)字线执行读取操作。
当擦除单元的数量(即,擦除单元的#)不超过阈值(在步骤S1510中为“N”)时,在步骤S1514中处理器134可以确定第K字线是最终编程字线。也就是说,处理器134可以确定第(K+1)字线是第一擦除字线。
图16A和图16B是示出在基于二进制搜索方法的开放存储块扫描操作期间应用本实施例的示例的示图和流程图。
图16A示出包括16个字线的开放存储块。在图16A中,阴影部分表示字线WL0至WL5是编程字线,空白部分表示字线WL6至WL15是擦除字线。在图16A中,①、②、③和④顺序地表示在基于二进制搜索方法的开放存储块扫描操作期间,直到找到第一擦除字线之前被执行读取操作的字线。例如,当开放存储块扫描开始时,处理器134可以控制存储器装置150读取中间字线WL8。当中间字线WL8是擦除字线时,处理器134可以缩小范围并且控制存储器装置150读取高字线WL4。将参照图16B描述具体操作。
参照图16B,当存储器系统110通电时,在步骤S1602中,处理器134可以将例如图4的WL0的第零字线设置为低字线Low WL(即,Low WL=0),并且将例如图4的WLn的第N字线设置为高字线High WL(即,High WL=N)。
在步骤S1604中,处理器134可以将低字线和高字线之间的中间字线设置为中间字线Middle WL。换句话说,处理器134可以设置:Middle WL=(Low WL+High WL)/2。
在步骤S1606中,存储器装置150可以响应于处理器134的控制,通过对中间字线执行第一读取操作来读取数据。存储器装置150可以将读取数据提供至缓冲器1302。
在步骤S1608中,擦除确定器146可以通过参考读取数据来确定联接到中间字线的存储器单元之中的擦除单元的数量(即,擦除单元的#)是否超过阈值。
当擦除单元的数量(即,擦除单元的#)超过阈值(在步骤S1608中为“Y”)时,确定器1306可以向处理器134提供擦除信号,并且在步骤S1610中处理器134可以响应于擦除信号将中间字线设置为新的高字线。换句话说,处理器134可以设置:High WL=Middle WL。
当擦除单元的数量(即,擦除单元的#)不超过阈值(在步骤S1608中为“N”)时,在步骤S1612中,确定器1306可以向第二读取控制器1308提供控制信号。第二读取控制器1308可以响应于控制信号来控制存储器装置150对中间字线执行第二读取操作。存储器装置150可以响应于控制信号,通过将第二读取电压施加到中间字线来读取数据。存储器装置150可以将读取数据提供至缓冲器1302。
在步骤S1614中,擦除确定器146可以通过参考读取数据来确定存储器单元之中的擦除单元的数量(即,擦除单元的#)是否超过阈值。
当擦除单元的数量(即,擦除单元的#)超过阈值(在步骤S1614中为“Y”)时,确定器1306可以向处理器134提供擦除信号,并且在步骤S1610中处理器134可以响应于擦除信号将中间字线设置为新的高字线。换句话说,处理器134可以设置:High WL=Middle WL。
当擦除单元的数量(即,擦除单元的#)不超过阈值(在步骤S1614中为“N”)时,确定器1306可以向处理器134提供编程信号,并且在步骤S1616中处理器134可以响应于编程信号将中间字线设置为新的低字线。换句话说,处理器134可以设置:Low WL=Middle WL。
在步骤S1618中,处理器134可以将新的高字线和新的低字线之间的中间字线设置为新的中间字线。换句话说,处理器134可以设置:Middle WL=(Low WL+High WL)/2。
在步骤S1620中,处理器134可以确定新的高字线是否与新的中间字线一致(即,High WL==Middle WL)或者新的低字线是否与新的中间字线一致(即,Low WL==MiddleWL)。
当步骤S1620的确定结果指示新的高字线或新的低字线与新的中间字线不一致(在步骤S1620中为“N”)时,处理器134可以对新的高字线、新的低字线和新的中间字线执行步骤S1606至S1618的操作。
当步骤S1620的确定结果指示新的高字线或新的低字线与新的中间字线一致(在步骤S1620中为“Y”)时,在步骤S1622中处理器134可以将新的中间字线设置为第一擦除字线。换句话说,处理器134可以设置:Low WL=Middle WL。
根据实施例,当执行开放存储块扫描操作时,处理器134可以通过确定被确定为错误校正失败的字线是擦除字线还是编程字线来准确地找到第一擦除字线。因此,可以提高突然断电恢复操作的准确性,这使得可以提高存储器系统110的可靠性。
图17至图25是示意性示出根据各个实施例的图1至图16B的数据处理系统的应用示例的示图。
图17是示意性地示出根据包括实施例的存储器系统的数据处理系统的示图。图17示意性示出应用根据实施例的存储器系统的存储卡系统6100。
参照图17,存储卡系统6100可包括存储器控制器6120、存储器装置6130和连接器6110。
更具体地,存储器控制器6120可被连接至由非易失性存储器(NVM)实施的存储器装置6130,并被配置成访问存储器装置6130。例如,存储器控制器6120可被配置成控制存储器装置6130的读取操作、写入操作、擦除操作和后台操作。存储器控制器6120可被配置成提供存储器装置6130和主机(未示出)之间的接口连接并驱动用于控制存储器装置6130的固件。也就是说,存储器控制器6120可对应于参照图1和图2描述的存储器系统110的控制器130,并且存储器装置6130可对应于参照图1和图2描述的存储器系统110的存储器装置150。
因此,如图2所示,存储器控制器6120可包括随机存取存储器(RAM)、处理器、主机接口、存储器接口和错误校正部件。
存储器控制器6120可通过连接器6110与例如图1和图2的主机102的外部装置通信。例如,如参照图2所述,存储器控制器6120可被配置成通过诸如以下的各种通信协议中的一种或多种与外部装置通信:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCIe)、高级技术附件(ATA)、串行ATA、并行ATA、小型计算机系统接口(SCSI)、增强型小型磁盘接口(EDSI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、无线保真(WI-FI或WIFI)以及蓝牙。因此,存储器系统和数据处理系统可应用于有线和/或无线电子装置,尤其是移动电子装置。
存储器装置6130可由非易失性存储器来实施。例如,存储器装置6130可由诸如以下的各种非易失性存储器装置中的任意一种来实施:可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)以及自旋转移力矩磁性RAM(STT-RAM)。
存储器控制器6120和存储器装置6130可被集成到单个半导体装置中。例如,存储器控制器6120和存储器装置6130可被集成以形成固态驱动器(SSD)。此外,存储器控制器6120和存储器装置6130可构成诸如以下的存储卡:个人计算机(PC)卡(例如,个人计算机存储卡国际协会(PCMCIA))、紧凑型闪存(CF)卡、智能媒体卡(例如,SM和SMC)、记忆棒、多媒体卡(例如,MMC、RS-MMC、微型MMC和eMMC)、安全数字(SD)卡(例如,SD、迷你SD、微型SD和SDHC)和通用闪存(UFS)。
图18是示意性地示出包括根据实施例的存储器系统的数据处理系统6200的另一示例的示图。
参照图18,数据处理系统6200可包括具有一个或多个非易失性存储器(NVM)的存储器装置6230和用于控制存储器装置6230的存储器控制器6220。如参照图2所述的,数据处理系统6200可用作诸如存储卡(例如,CF、SD、微型SD等)或USB装置的存储介质。存储器装置6230可对应于图1和图2所示的存储器系统110中的存储器装置150,并且存储器控制器6220可对应于图1和图2所示的存储器系统110中的控制器130。
存储器控制器6220可响应于主机6210的请求控制对存储器装置6230的读取操作、写入操作或擦除操作,并且存储器控制器6220可包括一个或多个中央处理单元(CPU)6221、诸如随机存取存储器(RAM)6222的缓冲存储器、错误校正码(ECC)电路6223、主机接口6224以及诸如NVM接口6225的存储器接口。
CPU 6221可控制对存储器装置6230的全部操作,例如读取操作、写入操作、文件系统管理操作和坏页面管理操作。RAM 6222可根据CPU6221的控制来操作,并且用作工作存储器、缓冲存储器或高速缓存存储器。当RAM 6222用作工作存储器时,由CPU 6221处理的数据可被临时存储在RAM 6222中。当RAM 6222用作缓冲存储器时,RAM 6222可用于缓冲从主机6210传输到存储器装置6230或从存储器装置6230传输到主机6210的数据。当RAM 6222用作高速缓存存储器时,RAM 6222可辅助存储器装置6230以更高速度运转。
ECC电路6223可对应于图2所示的控制器130的ECC部件138。如参照图2所述,ECC电路6223可生成用于校正从存储器装置6230提供的数据的失败位或错误位的错误校正码(ECC)。ECC电路6223可对提供给存储器装置6230的数据进行错误校正编码,由此形成具有奇偶校验位的数据。奇偶校验位可存储在存储器装置6230中。ECC电路6223可对从存储器装置6230输出的数据执行错误校正解码。ECC电路6223可使用奇偶校验位来校正错误。例如,如参照图2所述,ECC电路6223可使用低密度奇偶校验(LDPC)码、博斯-查德胡里-霍昆格姆(BCH)码、turbo码、里德-所罗门(RS)码、卷积码、递归系统码(RSC)或诸如网格编码调制(TCM)或分组编码调制(BCM)的编码调制来校正错误。
存储器控制器6220可通过主机接口6224与主机6210交换数据,并通过NVM接口6225与存储器装置6230交换数据。主机接口6224可通过并行高级技术附件(PATA)总线、串行高级技术附件(SATA)总线、小型计算机系统接口(SCSI)、通用串行总线(USB)、高速外围组件互连(PCIe)或NAND接口而连接至主机6210。存储器控制器6220可利用诸如无线保真(WiFi)或长期演进(LTE)的移动通信协议而具有无线通信功能。存储器控制器6220可以连接到外部装置,例如主机6210或另一外部装置,并且然后将数据传输到外部装置和/或从外部装置接收数据。特别地,由于存储器控制器6220被配置成通过各种通信协议的一种或多种与外部装置进行通信,因此存储器系统和数据处理系统可被应用于有线和/或无线电子装置,特别是移动电子装置。
图19是示意性地示出包括根据实施例的存储器系统的数据处理系统的另一示例的示图。图19示意性示出应用存储器系统的固态驱动器(SSD)6300。
参照图19,SSD 6300可包括控制器6320和包括多个非易失性存储器(NVM)的存储器装置6340。控制器6320可对应于图1和图2的存储器系统110中的控制器130,并且存储器装置6340可对应于图1和图2的存储器系统中的存储器装置150。
更具体地,控制器6320可通过多个通道CH1至CHi连接至存储器装置6340。控制器6320可包括一个或多个处理器6321、错误校正码(ECC)电路6322、主机接口6324、缓冲存储器6325和例如非易失性存储器接口6326的存储器接口。
缓冲存储器6325可临时存储从主机6310提供的数据或从存储器装置6340中包括的多个闪速存储器NVM提供的数据,或者临时存储多个闪速存储器NVM的元数据,例如,包括映射表的映射数据。缓冲存储器6325可由诸如动态随机存取存储器(DRAM)、同步DRAM(SDRAM)、双数据速率(DDR)SDRAM、低功率DDR(LPDDR)SDRAM和图形RAM(GRAM)的易失性存储器实现,或者由诸如铁电RAM(FRAM)、电阻式RAM(RRAM或ReRAM)、自旋转移扭矩磁性RAM(STT-MRAM)和相变RAM(PRAM)的非易失性存储器来实现。通过示例,图19示出缓冲存储器6325设置在控制器6320中。然而,缓冲存储器6325可被设置在控制器6320的外部。
ECC电路6322可在编程操作期间计算待被编程到存储器装置6340的数据的错误校正码(ECC)值,在读取操作期间基于ECC值对从存储器装置6340读取的数据执行错误校正操作,并在失败数据恢复操作期间对从存储器装置6340恢复的数据进行错误校正操作。
主机接口6324可提供与例如主机6310的外部装置的接口功能,并且非易失性存储器接口6326可提供与通过多个通道连接的存储器装置6340的接口功能。
此外,可提供应用图1和图2的存储器系统110的多个SSD 6300来实施数据处理系统,例如,独立磁盘冗余阵列(RAID)系统。RAID系统可包括多个SSD 6300和用于控制多个SSD 6300的RAID控制器。当RAID控制器响应于从主机6310提供的写入命令执行编程操作时,RAID控制器可根据多个RAID级别,即从SSD 6300中的主机6310提供的写入命令的RAID级别信息,选择一个或多个存储器系统或SSD 6300,并将对应于写入命令的数据输出到选择的SSD 6300。此外,当RAID控制器响应于从主机6310提供的读取命令执行读取操作时,RAID控制器可根据多个RAID级别,即从SSD 6300中的主机6310提供的读取命令的RAID级别信息,在SSD 6300中选择一个或多个存储器系统或SSD 6300,并将从所选择的SSD 6300读取的数据提供给主机6310。
图20是示意性地示出包括根据实施例的存储器系统的数据处理系统的另一示例的示图。图20示意性地示出应用存储器系统的嵌入式多媒体卡(eMMC)6400。
参照图20,eMMC 6400可包括控制器6430和通过一个或多个NAND闪速存储器实施的存储器装置6440。控制器6430可对应于图1至图2的存储器系统110中的控制器130,并且存储器装置6440可对应于图1和图2的存储器系统110中的存储器装置150。
更具体地,控制器6430可通过多个通道连接至存储器装置6440。控制器6430可包括一个或多个内核6432、主机接口(I/F)6431和例如NAND接口(I/F)6433的存储器接口。
内核6432可控制eMMC 6400的全部操作,主机接口6431可提供控制器6430和主机6410之间的接口功能,并且NAND接口6433可提供存储器装置6440和控制器6430之间的接口功能。例如,主机接口6431可用作并行接口,例如参照图2所述的MMC接口。此外,主机接口6431可用作串行接口,例如超高速(UHS)-I和UHS-II接口。
已经参照图17至图20描述的存储器控制器6120、存储器控制器6220、控制器6320和控制器6430中的每一个可以包括参照图1描述的擦除确定器146。擦除确定器146可以准确地确定包括在存储器装置6130、存储器装置6230、存储器装置6340和存储器装置6440中的字线是否是擦除字线,从而提高数据处理系统的可靠性和性能。
图21至图24是示意性地示出包括根据一个或多个实施例的存储器系统的数据处理系统的其它示例的示图。图21至图24示意性地示出可以应用存储器系统的通用闪存(UFS)系统。
参照图1至图20描述的根据各个实施例的存储器系统可以被应用于参照图21至图24描述的UFS。
参照图21至图24,UFS系统6500、6600、6700和6800可分别包括主机6510、6610、6710和6810,UFS装置6520、6620、6720和6820以及UFS卡6530、6630、6730和6830。主机6510、6610、6710和6810可用作有线和/或无线电子装置或特别是移动电子装置的应用处理器,UFS装置6520、6620、6720和6820可用作嵌入式UFS装置。UFS卡6530、6630、6730和6830可用作外部嵌入式UFS装置或可移动UFS卡。
各个UFS系统6500、6600、6700和6800中的主机6510、6610、6710和6810,UFS装置6520、6620、6720和6820以及UFS卡6530、6630、6730和6830可通过UFS协议与外部装置,例如有线和/或无线电子装置,特别是移动电子装置通信。UFS装置6520、6620、6720和6820以及UFS卡6530、6630、6730和6830可由图1和图2所示的存储器系统110实现。例如,在UFS系统6500、6600、6700和6800中,UFS装置6520、6620、6720和6820可以参照图18至图20描述的数据处理系统6200、SSD 6300或eMMC 6400的形式来实施,并且UFS卡6530、6630、6730和6830可以参照图17描述的存储卡系统6100的形式来实施。
此外,在UFS系统6500、6600、6700和6800中,主机6510、6610、6710和6810,UFS装置6520、6620、6720和6820以及UFS卡6530、6630、6730和6830可通过例如MIPI(移动产业处理器接口)中的MIPI M-PHY和MIPI UniPro(统一协议)的UFS接口彼此通信。此外,UFS装置6520、6620、6720和6820与UFS卡6530、6630、6730和6830可通过除UFS协议以外的例如以下的各种协议彼此通信:通用串行总线(USB)闪存驱动器(UFD)、多媒体卡(MMC)、安全数字(SD)、迷你-SD和微型-SD。
在图21所示的UFS系统6500中,主机6510、UFS装置6520以及UFS卡6530中的每一个可包括UniPro。主机6510可执行交换操作,以便与UFS装置6520和UFS卡6530通信。特别地,主机6510可在UniPro处,通过例如L3交换的链路层交换与UFS装置6520或UFS卡6530通信。UFS装置6520和UFS卡6530可主机6510的UniPro处,通过链路层交换来彼此通信。在图21的实施例中,通过示例示出一个UFS装置6520和一个UFS卡6530连接至主机6510的配置。然而,在另一实施例中,多个UFS装置和UFS卡可并联或以星型形式连接至主机6510,并且多个UFS卡可并联或以星型形式连接至UFS装置6520,或者串联或以链型形式连接至UFS装置6520。
在图22所示的UFS系统6600中,主机6610、UFS装置6620、UFS卡6630中的每一个可包括UniPro,并且主机6610可通过执行交换操作的交换模块6640,例如通过在UniPro处执行例如L3交换的链路层交换的交换模块6640,与UFS装置6620或UFS卡6630通信。UFS装置6620和UFS卡6630可通过交换模块6640在UniPro处的链路层交换来彼此通信。在图22的实施例中,通过示例示出一个UFS装置6620和一个UFS卡6630连接至交换模块6640的配置。然而,在另一实施例中,多个UFS装置和UFS卡可并联或以星型形式连接至交换模块6640,并且多个UFS卡可串联或以链型形式连接至UFS装置6620。
在图23所示的UFS系统6700中,主机6710、UFS装置6720和UFS卡6730中的每一个可包括UniPro。主机6710可通过执行交换操作的交换模块6740,例如通过在UniPro处执行例如L3交换的链路层交换的交换模块6740,与UFS装置6720或UFS卡6730通信。UFS装置6720和UFS卡6730可通过交换模块6740在UniPro处的的链路层交换来彼此通信,并且交换模块6740可在UFS装置6720内部或外部与UFS装置6720集成为一个模块。在图23的实施例中,通过示例示出一个UFS装置6720和一个UFS卡6730连接至交换模块6740的配置。然而,在另一实施例中,每个都包括交换模块6740和UFS装置6720的多个模块可并联或以星型形式连接至主机6710,或者串联或以链型形式彼此连接。此外,多个UFS卡可并联或以星型形式连接至UFS装置6720。
在图24所示的UFS系统6800中,主机6810、UFS装置6820和UFS卡6830中的每一个可包括M-PHY和UniPro。UFS装置6820可执行交换操作,以便与主机6810和UFS卡6830通信。特别地,UFS装置6820可通过用于与主机6810通信的M-PHY和UniPro模块之间的交换操作和用于与UFS卡6830通信的M-PHY和UniPro模块之间的交换操作,例如通过目标标识符(ID)交换操作,来与主机6810或UFS卡6830通信。主机6810和UFS卡6830可通过UFS装置6820的M-PHY和UniPro模块之间的目标ID交换来彼此通信。在图24的实施例中,通过示例示出一个UFS装置6820连接至主机6810和一个UFS卡6830连接至UFS装置6820的配置。然而,在另一实施例中,多个UFS装置可并联或以星型形式连接至主机6810,或串联或以链型形式连接至主机6810,并且多个UFS卡可并联或以星型形式连接至UFS装置6820,或串联或以链型形式连接至UFS装置6820。
图25是示意性地示出包括根据实施例的存储器系统的数据处理系统的另一示例的示图。图25是示意性地示出可应用存储器系统的用户系统6900的示图。
参照图25,用户系统6900可包括用户接口6910、存储器模块6920、应用处理器6930、网络模块6940和存储模块6950。
更具体地,应用处理器6930可驱动包括在例如操作系统(OS)的用户系统6900中的组件,并且包括控制包括在用户系统6900中的组件的控制器、接口和图形引擎。应用处理器6930可被设置为片上系统(SoC)。
存储器模块6920可用作用户系统6900的主存储器、工作存储器、缓冲存储器或高速缓存存储器。存储器模块6920可包括诸如动态RAM(DRAM)、同步DRAM(SDRAM)、双倍数据速率(DDR)SDRAM、DDR2SDRAM、DDR3SDRAM、LPDDR SDRAM、LPDDR2SDRAM或LPDDR3SDRAM的易失性随机存取存储器(RAM),或诸如相变RAM(PRAM)、电阻式RAM(ReRAM)、磁阻RAM(MRAM)或铁电RAM(FRAM)的非易失性RAM。例如,可基于叠层封装(POP)来封装和安装应用处理器6930和存储器模块6920。
网络模块6940可与外部装置通信。例如,网络模块6940不仅可支持有线通信,而且还支持诸如以下的各种无线通信协议:码分多址(CDMA)、全球移动通信系统(GSM)、宽带CDMA(WCDMA)、CDMA-2000、时分多址(TDMA)、长期演进(LTE)、全球微波接入互操作性(WiMAX)、无线局域网(WLAN)、超宽带(UWB)、蓝牙、无线显示(WI-DI),从而与有线/无线电子装置或特别是移动电子装置通信。因此,根据本发明的实施例的存储器系统和数据处理系统可应用于有线/无线电子装置。网络模块6940可被包括在应用处理器6930中。
存储模块6950可存储数据,例如从应用处理器6930接收的数据,然后可将所存储的数据传输到应用处理器6930。存储模块6950可通过诸如相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(ReRAM)、NAND闪存、NOR闪存和3D NAND闪存的非易失性半导体存储器装置实施,并且可被提供为用户系统6900的诸如存储卡或外部驱动器的可移动存储介质。存储模块6950可对应于参照图1和图2描述的存储器系统110。此外,存储模块6950可被实施为如上参照图19至图24所述的SSD、eMMC和UFS。
在实施例中,存储模块6950可以进一步根据通过对字线的第一读取操作而读取的数据来对字线执行第二读取操作,以便提高可靠性和性能。因此,存储模块6950可以准确地识别擦除字线。
用户接口6910可包括用于向应用处理器6930输入数据或命令或者用于将数据输出到外部装置的接口。例如,用户接口6910可包括诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、摄像机、麦克风、陀螺仪传感器、振动传感器和压电元件的用户输入接口,以及诸如液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、LED、扬声器和电动机的用户输出接口。
此外,当图1和图2的存储器系统110应用于用户系统6900的移动电子装置时,应用处理器6930可控制移动电子装置的操作,并且网络模块6940可用作用于控制与外部装置的有线和/或无线通信的通信模块。用户接口6910可在移动电子装置的显示/触摸模块上显示由处理器6930处理的数据或支持从触摸面板接收数据的功能。
本发明的实施例提供一种能够通过准确地确定擦除字线来提高性能和可靠性的存储器系统及其操作方法。
尽管已经说明和描述了各个实施例,但是根据本公开,本领域技术人员将清楚的是,在不脱离所附权利要求中限定的本发明的精神和范围的情况下,可以进行各种改变和修改。

Claims (10)

1.一种存储器系统的操作方法,包括:
使用包括第一读取电压的读取电压组,对与读取命令相对应的字线执行第一读取操作;
根据对通过所述第一读取操作读取的数据的错误校正失败,使用大于所述第一读取电压的第二读取电压对所述字线执行第二读取操作;以及
根据作为所述第二读取操作的结果,所述字线被确定为擦除字线,将包括与所述字线联接的存储器单元的存储块确定为关闭存储块。
2.权利要求1所述的操作方法,进一步包括:
选择所述关闭存储块作为牺牲块以进行垃圾收集操作;以及
当所述垃圾收集操作被触发时,将所述牺牲块的有效数据移动到目标块。
3.根据权利要求1所述的操作方法,进一步包括:根据作为所述第二读取操作的结果,所述字线被确定为编程字线,对所述字线执行读取重试操作和软判决操作中的一个或多个。
4.根据权利要求1所述的操作方法,进一步包括:根据作为所述第二读取操作的结果,具有设置值的位的数量,来确定所述字线是擦除字线。
5.一种存储器系统的操作方法,包括:
当在突然断电,即SPO之后所述存储器系统被通电时,通过重复地确定包括在开放存储块中的每个字线是否为擦除字线来执行搜索擦除字线的开放块扫描操作;以及
对所述擦除字线执行修复操作,
其中确定字线是否为所述擦除字线包括:
通过向所述字线施加第一读取电压来执行第一读取操作;
根据作为所述第一读取操作的结果,包括在所述字线中的擦除单元的数量,通过施加大于所述第一读取电压的第二读取电压来执行第二读取操作;并且
根据所述第二读取操作的结果,来确定所述字线是擦除字线。
6.根据权利要求5所述的操作方法,其中执行所述开放块扫描操作包括:按照所述字线被编程的顺序,在所述开放存储块的字线之中搜索所述擦除字线以用于所述修复操作。
7.根据权利要求5所述的操作方法,其中执行所述开放块扫描操作包括:按照与所述字线被编程的相反顺序,在所述开放存储块的字线之中搜索所述擦除字线以用于所述修复操作。
8.根据权利要求5所述的操作方法,其中执行所述开放块扫描操作包括:通过二进制搜索方法在所述开放存储块的字线之中,搜索所述擦除字线以用于所述修复操作。
9.根据权利要求5所述的操作方法,进一步包括:当根据所述第二读取操作的结果,所述字线被确定为所述擦除字线时,将所述开放存储块确定为关闭存储块。
10.一种存储器系统,包括:
存储器装置,存储数据;以及
控制器,控制所述存储器装置,
其中所述控制器:
响应于读取请求,使用第一读取电压对字线执行第一读取操作;
对由所述第一读取操作读取的数据执行错误校正;
当对所读取的数据的错误校正失败时,使用大于所述第一读取电压的第二读取电压对所述字线执行第二读取操作;
基于联接到所述字线的存储器单元之中的擦除存储器单元的数量来确定所述字线是否为擦除字线;并且
对包括所述擦除字线的存储块执行干扰处理操作。
CN201910602119.9A 2018-08-10 2019-07-05 存储器系统及其操作方法 Active CN110827906B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180093814A KR20200018060A (ko) 2018-08-10 2018-08-10 메모리 시스템 및 메모리 시스템의 동작방법
KR10-2018-0093814 2018-08-10

Publications (2)

Publication Number Publication Date
CN110827906A CN110827906A (zh) 2020-02-21
CN110827906B true CN110827906B (zh) 2023-11-07

Family

ID=69405064

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910602119.9A Active CN110827906B (zh) 2018-08-10 2019-07-05 存储器系统及其操作方法

Country Status (3)

Country Link
US (1) US11163646B2 (zh)
KR (1) KR20200018060A (zh)
CN (1) CN110827906B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102583810B1 (ko) * 2018-05-15 2023-10-05 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
US11189337B1 (en) * 2020-05-29 2021-11-30 Western Digital Technologies, Inc. Multi-stage voltage control for peak and average current reduction of open blocks
US11335413B2 (en) * 2020-05-29 2022-05-17 Western Digital Technologies, Inc. Ramp rate control for peak and average current reduction of open blocks
CN111752960B (zh) * 2020-06-28 2023-07-28 北京百度网讯科技有限公司 数据处理方法和装置
US11355199B2 (en) * 2020-07-23 2022-06-07 Intel Corporation Method and apparatus to mitigate hot electron read disturbs in 3D NAND devices
CN113220502B (zh) * 2021-05-07 2023-10-31 深圳宏芯宇电子股份有限公司 存储器管理方法、存储器存储装置及存储器控制器
CN117724878A (zh) * 2022-09-16 2024-03-19 深圳市江波龙电子股份有限公司 数据处理方法、电子设备及计算机可读存储装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013050374A (ja) * 2011-08-31 2013-03-14 Noritz Corp 温度検出回路および燃焼装置
CN105511803A (zh) * 2015-11-26 2016-04-20 北京兆易创新科技股份有限公司 一种存储介质的擦除中断处理方法
CN106816177A (zh) * 2015-12-02 2017-06-09 爱思开海力士有限公司 数据存储装置及其操作方法
CN106919345A (zh) * 2015-12-24 2017-07-04 爱思开海力士有限公司 存储器系统及其操作方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8954650B2 (en) * 2011-09-16 2015-02-10 Intel Corporation Apparatus, system, and method for improving read endurance for a non-volatile memory
KR20150045747A (ko) * 2013-10-21 2015-04-29 에스케이하이닉스 주식회사 데이터 저장 시스템 및 그것의 동작 방법
US9478292B2 (en) * 2013-10-27 2016-10-25 Sandisk Technologies Llc Read operation for a non-volatile memory
US9916237B2 (en) * 2014-12-12 2018-03-13 Sandisk Technologies Llc Model based configuration parameter management
KR20160143371A (ko) 2015-06-05 2016-12-14 에스케이하이닉스 주식회사 메모리 시스템 및 그 동작 방법
US9390808B1 (en) * 2015-09-11 2016-07-12 Kabushiki Kaisha Toshiba Semiconductor memory device
KR20180041428A (ko) * 2016-10-14 2018-04-24 에스케이하이닉스 주식회사 컨트롤러, 메모리 시스템 및 그의 동작 방법
KR20180047808A (ko) * 2016-11-01 2018-05-10 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR20180076765A (ko) * 2016-12-28 2018-07-06 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR102351649B1 (ko) * 2017-06-07 2022-01-17 삼성전자주식회사 저장 장치 및 그것의 동작 방법
KR20190035280A (ko) 2017-09-26 2019-04-03 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013050374A (ja) * 2011-08-31 2013-03-14 Noritz Corp 温度検出回路および燃焼装置
CN105511803A (zh) * 2015-11-26 2016-04-20 北京兆易创新科技股份有限公司 一种存储介质的擦除中断处理方法
CN106816177A (zh) * 2015-12-02 2017-06-09 爱思开海力士有限公司 数据存储装置及其操作方法
CN106919345A (zh) * 2015-12-24 2017-07-04 爱思开海力士有限公司 存储器系统及其操作方法

Also Published As

Publication number Publication date
US11163646B2 (en) 2021-11-02
KR20200018060A (ko) 2020-02-19
US20200050515A1 (en) 2020-02-13
CN110827906A (zh) 2020-02-21

Similar Documents

Publication Publication Date Title
CN107957849B (zh) 存储器系统及其操作方法
CN110827906B (zh) 存储器系统及其操作方法
CN108694096B (zh) 控制器、存储系统及其操作方法
US10452431B2 (en) Data processing system and operating method thereof
US10489078B2 (en) Controller keeping a sequence of data and operating method thereof
CN110874191B (zh) 存储器系统及该存储器系统的操作方法
CN107346214B (zh) 存储器系统及其操作方法
US20180068736A1 (en) Memory system and method for operating the memory system
CN110858180A (zh) 数据处理系统及其操作方法
CN110457230B (zh) 存储器系统及其操作方法
CN110765035A (zh) 存储器系统及其操作方法
CN110197692B (zh) 存储器系统及其操作方法
CN110032471B (zh) 存储器系统及其操作方法
CN110489271B (zh) 存储器系统及其操作方法
CN108694970B (zh) 控制器及其操作方法
CN109656470B (zh) 存储器系统及其操作方法
KR20220008058A (ko) 컨트롤러 및 컨트롤러의 동작방법
CN110045914B (zh) 存储器系统及其操作方法
CN111367468A (zh) 存储器系统及其操作方法
CN111273856A (zh) 控制器以及控制器的操作方法
CN111145818B (zh) 存储器系统及其操作方法
US10908992B2 (en) Controller and operation method thereof
CN110928486B (zh) 存储器系统及其操作方法
US10803960B2 (en) Memory device and operation method thereof
US20170344262A1 (en) Data processing system and method for operating the same

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant