CN108694017B - 存储器系统及其操作方法 - Google Patents
存储器系统及其操作方法 Download PDFInfo
- Publication number
- CN108694017B CN108694017B CN201711429361.8A CN201711429361A CN108694017B CN 108694017 B CN108694017 B CN 108694017B CN 201711429361 A CN201711429361 A CN 201711429361A CN 108694017 B CN108694017 B CN 108694017B
- Authority
- CN
- China
- Prior art keywords
- read
- memory
- read retry
- defect
- defects
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1048—Adding 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1012—Adding 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
- G06F11/102—Error in check bits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1405—Saving, restoring, recovering or retrying at machine instruction level
- G06F11/141—Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10009—Improvement or modification of read or write signals
- G11B20/10305—Improvement or modification of read or write signals signal quality assessment
- G11B20/10388—Improvement or modification of read or write signals signal quality assessment control of the read or write heads, e.g. tracking errors, defocus or tilt compensation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3431—Circuits or methods to detect disturbed nonvolatile memory cells, e.g. which still read as programmed but with threshold less than the program verify threshold or read as erased but with threshold greater than the erase verify threshold, and to reverse the disturbance via a refreshing programming or erasing step
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1816—Testing
- G11B2020/183—Testing wherein at least one additional attempt is made to read or write the data when a first attempt is unsuccessful
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本发明公开一种存储器系统,其可以包括:包括多个存储区域的存储器装置;以及控制器。控制器可以联接在主机和存储器装置之间,并且当存储区域中的任何一个中发生读取错误时,基于在发生读取错误的任何一个存储区域中的多个不同类型的缺陷的发生可能性,执行读取重试操作。
Description
相关申请的交叉引用
本申请要求于2017年3月29日提交的申请号为10-2017-0039915的韩国专利申请的优先权,其整体通过引用并入本文。
技术领域
本公开的各个实施例涉及一种存储器系统及其操作方法。
背景技术
近来,计算机环境范例变为允许用户在任何时间和任何地点访问计算机系统的普适计算环境。由于这个原因,诸如移动电话、数码相机、膝上型计算机等便携式电子装置的使用正在急剧增长。便携式电子装置通常采用使用存储器装置的存储器系统来存储数据。存储器系统可用作便携式电子装置的主存储器装置或辅助存储器装置。
由于存储器装置不包括机械驱动单元,所以它具有优良的稳定性和耐久性。此外,存储器装置的优点在于它可快速地访问数据并消耗少量的电力。具有这些优点的存储器装置的非限制性示例包括通用串行总线(USB)存储器装置、具有各种接口的存储卡以及固态驱动器(SSD)。
发明内容
各个实施例涉及一种用于读取重试操作的存储器控制器、存储器系统及其操作方法。
在实施例中,存储器系统可以包括:包括多个存储区域的存储器装置;以及控制器。控制器可以联接在主机和存储器装置之间,并且当存储区域中的任何一个中发生读取错误时,基于在发生读取错误的任何一个存储区域中的多个不同类型缺陷的发生可能性,执行读取重试操作。
在实施例中,存储器控制器可以包括:读取重试表,其包括多个读取重试集(readretry set);以及处理器,其适于:当任何一个存储区域中发生读取错误时,基于包括在存储器装置中的多个存储区域中的任何一个存储区域中的各个缺陷的发生可能性来分类(sort)多个不同类型的缺陷;根据分类的缺陷顺序在多个读取重试集中选择读取重试集;以及使用选择的读取重试集来执行读取重试操作。
在实施例中,存储器控制器的操作方法可以包括:当在任何一个存储区域中发生读取错误时,基于包括在存储器装置中的多个存储区域中的任何一个存储区域中的各个缺陷的发生可能性来分类多个不同类型的缺陷;根据分类的缺陷顺序在包括在读取重试表中的多个读取重试集中选择读取重试集;使用选择的读取重试集来执行读取重试操作。
附图说明
通过参照附图的以下具体实施方式,本发明的以上和其它特征及优点对于本发明所属领域的技术人员将变得更加显而易见,其中:
图1是说明包括根据本发明的实施例的存储器系统的数据处理系统的框图;
图2是说明图1所示的存储器系统中采用的存储器装置的示例性配置的示意图;
图3是说明图2所示的存储器装置中的存储块的存储器单元阵列的示例性配置的电路图;
图4是说明图2所示的存储器装置的示例性三维结构的示意图;
图5是示出根据预定顺序执行读取重试操作的示例的简图;
图6是示出根据针对相同缺陷的读取重试操作的次数发生延迟时间(latency)差的示例的简图;
图7A是示出根据实施例的数据处理系统的简图;
图7B是示出根据实施例的处理器的简图;
图8是示出根据另一实施例的数据处理系统的简图;
图9是示出根据实施例的存储器装置的简图;
图10是示出根据实施例的读取重试操作的流程的简图;
图11是示出根据实施例的状态跟踪器的简图;
图12是示出根据实施例的由状态跟踪器将状态信息写入存储器装置的每个存储区域的示例的简图;
图13是示出根据实施例的在每个存储区域中判定多个不同类型缺陷的读取错误发生可能性的示例的简图;
图14是示出根据实施例的提供用于多个缺陷的读取重试表的示例的简图;
图15是示出根据实施例的读取重试操作的流程图;
图16是示出根据另一实施例的读取重试操作的流程图;以及
图17至图25是示意性说明根据本发明的各个实施例的图1所示的数据处理系统的应用示例的简图。
具体实施方式
以下将参照附图更详细地描述各个实施例。以下描述将集中于用于理解根据实施例的操作所需的部分,并且其它部分的描述将被省略,以免不必要地模糊本实施例的主题。
在下文中,将参照附图详细地描述本发明的各个实施例。
图1是说明根据本发明的实施例的包括存储器系统100的数据处理系统110的框图。
参照图1,数据处理系统100可包括被可操作地联接至存储器系统110的主机102。
主机102可以是包括诸如移动电话、MP3播放器和膝上型计算机的便携式电子装置或诸如台式电脑、游戏机、电视机(TV)和投影仪的非便携式电子装置的任何适用的电子装置。主机102可包括至少一个操作系统(OS),并且OS可管理和控制主机102的全部功能和操作,并还使用数据处理系统100或存储器系统110提供主机102和用户之间的操作。OS可支持对应于用户的使用目的和用途的功能和操作。例如,OS可根据主机102的移动性被划分为普通OS和移动OS。通用OS可根据用户的环境被划分为个人OS和企业OS。例如,配置为支持向一般用户提供服务的功能的个人OS可包括Windows和Chrome,配置为保护和支持高性能的企业OS可包括Windows服务器、Linux和Unix。此外,配置为支持向用户提供移动服务功能和系统的省电功能的移动OS可包括Android、iOS和Windows Mobile。主机102可包括一个或多个OS。主机102可执行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可通过各种类型的存储装置实施。包括在存储器系统110中的存储装置的非限制性示例可包括诸如动态随机存取存储器(DRAM)和静态RAM(SRAM)的易失性存储器装置和诸如以下的非易失性存储器装置:只读存储器(ROM)、掩模ROM(MROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、铁电RAM(FRAM)、相变RAM(PRAM)、磁阻RAM(MRAM)、电阻式RAM(RRAM)和闪速存储器。闪速存储器可具有三维(3D)堆叠结构。
存储器系统110可包括存储器装置150和控制器130。存储器装置150可为主机120存储数据,并且控制器130可控制将数据存储到存储器装置150中。
控制器130和存储器装置150可被集成到单个半导体装置中,单个半导体装置可被包括在如上所例示的各种类型的存储器系统中。
存储器系统110的非限制性应用示例可包括计算机、超移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、网络平板、平板电脑、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、便携式游戏机、导航系统、黑盒、数码相机、数字多媒体广播(DMB)播放器、三维电视、智能电视、数字音频记录器、数字音频播放器、数字图片记录器、数字图片播放器、数字视频记录器、数字视频播放器、构成数据中心的存储装置、能够在无线环境下传输/接收信息的装置、构成家庭网络的各种电子装置之一、构成计算机网络的各种电子装置之一、构成远程信息处理网络的各种电子装置之一、射频识别(RFID)装置或构成计算系统的各种部件之一。
存储器装置150可以是非易失性存储器装置,并且即使不供应电力,其也可保留其中存储的数据。存储器装置150可通过写入操作来存储从主机102提供的数据,并且通过读取操作将存储在其中的数据提供给主机102。存储器装置150可包括多个存储器管芯(未示出),每个存储器管芯包括多个平面(未示出),每个平面包括多个存储块152至156,存储块152至156中的每一个可包括多个页面,并且每个页面可包括联接到字线的多个存储器单元。
控制器130可响应于来自主机102的请求控制存储器装置150。例如,控制器130可将从存储器装置150读取的数据提供给主机102,并将从主机102提供的数据存储至存储器装置150中。对于该操作,控制器130可控制存储器装置150的读取操作、写入操作、编程操作和擦除操作。
控制器130可包括主机接口(I/F)单元132、处理器134、错误校正码(ECC)单元138、电源管理单元(PMU)140、NAND闪速控制器(NFC)142以及存储器144,其全部通过内部总线可操作地联接。
主机接口单元132可被配置成处理主机102的命令和数据,并可通过诸如以下的各种接口协议中的一种或多种与主机102通信:通用串行总线(USB)、多媒体卡(MMC)、高速外围组件互连(PCI-e)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、串行高级技术附件(SATA)、并行高级技术附件(PATA)、增强型小型磁盘接口(ESDI)以及电子集成驱动器(IDE)。
ECC单元138可检测并校正包括在从存储器装置150读取的数据中的错误。换言之,ECC单元138可通过在ECC编码进程期间使用的ECC代码对从存储器装置150读取的数据执行错误校正解码进程。根据错误校正解码进程的结果,ECC单元138可输出信号,例如错误校正成功/失败信号。当错误位的数量大于可校正错误位的阈值时,ECC单元138不校正错误位,并且可输出错误校正失败信号。
ECC单元138可通过诸如以下的编码调制执行错误校正:低密度奇偶校验(LDPC)码、博斯-查德胡里-霍昆格姆(Bose-Chaudhri-Hocquenghem,BCH)码、涡轮码、里德-所罗门(Reed-Solomon)码、卷积码、递归系统码(RSC)、网格编码调制(TCM)以及分组编码调制(BCM)。然而,ECC单元138不限于此。ECC单元138可包括用于错误校正的所有电路、模块、系统或装置。
PMU 140可提供和管理控制器130的电力。
当存储器装置为NAND闪速存储器时,NFC 142是用于接口连接控制器130和存储器装置150的存储器/存储接口的示例,使得控制器130响应于来自主机102的请求来控制存储器装置150。当存储器装置150是闪速存储器或具体地是NAND闪速存储器时,NFC 142可在处理器134的控制下生成用于存储器装置150的控制信号并处理待被提供给存储器装置150的数据。NFC 142可用作处理控制器130和存储器装置150之间的命令和数据的接口(例如,NAND闪存接口)。具体地,NFC 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)。
控制器130的处理器134可包括用于执行存储器装置150的坏块管理操作的管理单元(未示出)。管理单元可执行坏块管理操作,其用于检查被包括在存储器装置150中的多个存储块152至156中在编程操作期间由于NAND闪速存储器的特性发生编程失败的坏块。管理单元可将坏块的编程失败数据写入到新的存储块。在具有3D堆叠结构的存储器装置150中,坏块管理操作可能降低存储器装置150的使用效率和存储器系统110的可靠性。因此,需要更可靠地执行坏块管理操作。
图2是说明图1所示的存储器系统110中采用的存储器装置150的示例性配置的示意图;
参照图2,存储器装置150可包括多个存储块0至N-1,并且块0至N-1中的每一个可包括多个页面,例如2M个页面,页面的数量可根据电路设计而变化。包括在各个存储块0至N-1中的存储器单元可以是下列中的一个或多个:存储1位数据的单层单元(SLC)、存储2位数据的多层单元(MLC)、存储3位数据也被称为三层单元(TLC)的MLC、存储4位数据也被称为四层单元(QLC)的MLC或存储5位或更多位数据的MLC。
图3是说明图2的存储器装置150中的存储块的存储器单元阵列的示例性配置的电路图;
参照图3,可对应于存储器系统110的存储器装置150中包括的多个存储块152至156中的任一个的存储块330可包括联接到多个相应位线BL0至BLm-1的多个单元串340。每列单元串340可包括一个或多个漏极选择晶体管DST和一个或多个源极选择晶体管SST。多个存储器单元MC0至MCn-1可以串联地联接在漏极选择晶体管DST和源极选择晶体管SST之间。在实施例中,存储器单元晶体管MC0至MCn-1中的每一个可通过能够存储多位数据信息的MLC来实施。单元串340中的每一个可被电联接到多个位线BL0至BLm-1中的对应位线。例如,如图3所示,第一单元串被联接到第一位线BL0,最后的单元串被联接到最后的位线BLm-1。
虽然图3示出了NAND闪速存储器单元,但是本发明不限于此。例如,注意的是,存储器单元可以是NOR闪速存储器单元,或包括组合在其中的两种或更多种存储器单元的混合闪速存储器单元。还应注意的是,存储器装置150可以是包括作为电荷存储层的导电浮栅的闪速存储器装置,或者包括作为电荷存储层的绝缘层的电荷撷取闪速(CTF)存储器装置。
存储器装置150可进一步包括提供字线电压的电源供应单元310,该字线电压包括根据操作模式供应至字线的编程电压、读取电压和通过电压。电源供应单元310的电压生成操作可通过控制电路(未示出)来控制。在控制电路的控制下,电源供应单元310可选择存储器单元阵列的存储块(或扇区)中的一个、选择被选择的存储块的字线中的一个以及按需要将字线电压提供给被选择的字线和未被选择的字线。
存储器装置150可包括由控制电路控制的读取/写入电路320。在验证/正常读取操作期间,读取/写入电路320可用作读出放大器,其用于从存储器单元阵列读取数据。在编程操作期间,读取/写入电路320可用作根据待被存储在存储器单元阵列中的数据驱动位线的写入驱动器。在编程操作期间,读取/写入电路320可从缓冲器(未示出)接收待被存储到存储器单元阵列中的数据,并根据接收的数据驱动位线。读取/写入电路320可包括分别对应于列(或位线)或列对(或位线对)的多个页面缓冲器322至326,并且页面缓冲器322至326中的每一个可包括多个锁存器(未示出)。
图4是说明图2的存储器装置150的示例性三维(3D)结构的示意图;
存储器装置150可通过二维(2D)或三维(3D)存储器装置来实施。具体地,如图4所示,存储器装置150可通过具有3D堆叠结构的非易失性存储器装置来实施。当存储器装置150具有3D结构时,存储器装置150可包括每一个都具有3D结构或垂直结构的多个存储块BLK0至BLKN-1。
在上述存储器装置(例如,NAND闪速存储器)中,可能由于保留(retention)、读取干扰或在数据的编程(或写入)期间存储装置的温度与在相同数据的读取期间存储装置的温度之间的差异而发生读取错误。当发生读取错误时,可以重新执行读取操作,同时以预定顺序施加包含在预先定义的读取重试表中的读取电压电平。可以重新执行读取操作,直到成功地执行读取操作或者表中的读取电压电平被全部施加。
通常,由于读取错误可能由存储器装置中的多个不同类型的缺陷引起,因此读取重试表可以包括与如图5所示的各个类型的缺陷相对应的多个重试集。由于以固定的顺序执行根据现有技术的读取重试操作,因此读取重试操作可能需要大量时间。例如,在最好的情况下,可能在第一步骤510中成功地执行读取操作。然而,在最坏的情况下,可能在最后的步骤520中成功地执行读取操作。此外,如图6所示,虽然针对相同缺陷执行读取重试操作,但是根据读取重试操作的次数可能发生延迟时间差。
本发明的各个实施例提供一种读取重试方法,其当发生读取错误时确定每个缺陷类型的发生可能性,并且基于根据每种类型缺陷的发生可能性的降序选择的重试集来执行读取重试操作。在实施例中,读取重试方法可以预测对于存储器存储装置的例如每个块、管芯或页面的每个存储区域更可能发生哪些缺陷,并且通过从与针对存储区域的具有最高发生可能性的缺陷相对应的读取重试表选择读取重试集来对在存储区域中发生的错误执行读取重试操作,从而缩短错误校正所需的时间。
图7A是示出根据实施例的数据处理系统的简图。
参照图7A,数据处理系统可以包括主机70和存储器系统(或存储装置)700。存储器系统700可以包括控制器710和存储器装置750。图7A的控制器710和存储器装置750可以分别对应于图1的控制器130和存储器装置150。控制器710和存储器装置750可以分别执行对应于图1的控制器130和存储器装置150的操作。然而,为了便于描述,控制器710和存储器装置750可以限于其中根据本实施例的控制器710和存储器装置750执行读取重试操作的示例。
存储器装置750可以包括多个存储区域。例如,存储器装置750可以包括多个存储器芯片。存储器芯片中的每一个可以被划分成多个管芯,并且管芯中的每一个可以被划分成多个平面。平面中的每一个可以包括多个块,并且块中的每一个可以包括多个页面。
控制器710可以联接在主机70和存储器装置750之间,并且根据主机70的请求执行诸如读取操作、写入操作和擦除操作的各种操作。控制器710可以对包括在存储器装置750中的多个存储区域中的任何一个存储区域执行读取操作。当在读取操作期间发生读取错误时,控制器710可以执行诸如读取重试操作的各种重试操作。控制器710可以包括处理器720和读取重试表730。例如,处理器720可以对应于图1中所示的处理器134。又例如,处理器720可以对应于图1中所示的处理器134和NFC 142。
根据各个实施例,当在包括在存储器装置750中的多个存储区域中的存储区域中发生读取错误时,控制器710的处理器720可以基于可作为存储区域中检测的错误的原因的多个不同类型的缺陷的各个发生可能性来执行读取重试操作。处理器720然后可以通过参照读取重试表730来执行读取重试操作。读取重试表730可以包括与可能在存储器装置750中发生的各个缺陷相对应的多个读取重试集。读取重试表730还可以包括针对存储器装置的存储区域中的每一个的发生可能性以降序排列的可能缺陷的列表。例如,读取重试表730可以包括如图14所示的K个读取重试集。处理器720可以从读取重试表730中按照发生错误的存储区域中的缺陷类型的发生可能性的降序来选择读取重试集。当错误被校正时,处理器720将终止读取重试操作。通过选择针对每个区域优化的读取重试集,控制器710可以基本上减少读取重试操作所需的时间。
图7B是示出图7A的处理器720的简图。
参照图7B,处理器720可以包括状态跟踪器722和读取重试单元724。状态跟踪器722可以跟踪和写入关于包括在存储器装置750中的多个存储区域的状态信息。在各个实施例中,状态信息可以包括擦除/写入(E/W)循环计数、读取计数和温度信息中的一个或多个。E/W循环计数可以包括针对一个块的E/W循环计数。读取计数可以包括针对一个页面的读取计数。温度信息可以包括关于在控制器710或存储器装置750中测量的温度的信息。
当在包括在存储器装置750中的存储区域中发生读取错误时,读取重试单元724可以基于针对发生错误的存储区域的由状态跟踪器722跟踪的状态信息来确定多个可能的不同类型的缺陷中的每一个的发生可能性。读取重试单元724可以按照缺陷的发生可能性的降序分类多个缺陷,并且根据以分类的缺陷顺序选择的读取重试集来执行读取重试操作。读取重试单元724可以根据分类的缺陷顺序来在包括在读取重试表730中的多个读取重试集中选择读取重试集,并且使用选择的读取重试集来对任何一个存储区域执行读取重试操作。
图8是示出根据另一实施例的数据处理系统的简图。
参照图8,数据处理系统可以包括主机80和用作存储器系统(或存储装置)的固态驱动器(SSD)800。主机80可以针对SSD 800请求诸如读取操作、写入操作和擦除操作的各种操作。SSD 800可以包括NAND闪存阵列850作为包括多个存储区域的存储介质。NAND闪存阵列850可以包括多个块,并且块中的每一个可以包括多个页面。
SSD 800可以包括控制器,该控制器响应于来自主机80的写入请求而将从主机80提供的数据存储到NAND闪存阵列850中,或者响应于读取请求读取存储在NAND闪存阵列850中的数据并且将读取数据提供给主机80。控制器可以被划分成主机接口层(HIL)810、闪存转换层(FTL)820和闪存接口层(FIL)830。HIL 810可以用作用于与主机80的接口的层,FIL830可以用作用于与NAND闪存阵列850的接口的层,并且FTL 820可以用作用于转换在主机80和NAND闪存阵列850之间发送/接收的数据的层。HIL 810和FIL 830可以分别对应于图1中所示的控制器130的主机接口132和NFC 142,并且FTL 820可以对应于图1中所示的控制器130的其它部件。然而,为了便于描述,HIL 810的操作、FTL 820的操作和FIL 830的操作可以限于根据本实施例的其中HIL 810、FTL 820和FIL 830执行读取重试操作的示例。
当发生读取错误时,SSD 800可以执行诸如用于成功的读取操作的读取重试操作的各种重试方法。当即使使用所有方法也发生读取错误时,将发生读取失败。对于根据各个实施例的读取重试操作,FTL 820可以包括状态跟踪器822,并且FIL 830可以包括读取重试单元832和读取重试表834。
状态跟踪器822可以跟踪和写入关于包括在闪存阵列850中的多个存储区域(例如,块、管芯或页面)的状态信息。在各个实施例中,状态信息可以包括擦除/写入(E/W)循环计数、读取计数和温度信息中的一个或多个。E/W循环计数可以包括针对一个块的E/W循环计数。读取计数可以包括针对一个页面的读取计数。温度信息可以包括关于由SSD 800的控制器或闪存阵列850测量的温度的信息。
当在包括在闪存阵列850中的多个存储区域中的任何一个存储区域中发生读取错误时,读取重试单元832可以基于由状态跟踪器822跟踪的存储区域的状态信息,分别确定多个不同类型缺陷的发生可能性。读取重试单元832可以按照发生可能性的降序分类多个缺陷,并且根据分类的缺陷顺序来执行读取重试操作。读取重试单元832可以根据分类的缺陷顺序来在包括在读取重试表834中的多个读取重试集中选择读取重试集,并且使用选择的读取重试集来对任何一个存储区域执行读取重试操作。
图9是示出根据各个实施例的图7A的存储器装置750的简图。
参照图9,存储器装置750可以包括存储器控制单元910、电压供给单元920、行解码器930、存储器单元阵列940、列解码器950和编程/读取电路960。
存储器装置750可以包括诸如以下的闪速存储器装置:NAND闪存或NOR闪存、铁电随机存取存储器(FeRAM)、相变随机存取存储器(PCRAM)、磁性随机存取存储器(MRAM)或电阻式随机存取存储器(ReRAM)。
存储器单元阵列940可以联接到多个字线WL和多个位线BL。存储器单元阵列940可以包括布置在多个字线WL和多个位线BL之间的各个交叉点处的多个存储器单元。存储器单元阵列940可以接收用于表示将被访问的存储器单元的地址ADDR和命令CMD。地址ADDR可以包括用于选择存储器单元阵列940的字线WL的行地址X_ADDR和用于选择存储器单元阵列940的位线的列地址Y_ADDR。
行解码器930可以通过字线WL联接到存储器单元阵列940,并且响应于行地址X_ADDR从存储器控制单元910选择一个或多个字线。列解码器950可以通过位线BL联接到存储器单元阵列940,并且响应于列地址Y_ADDR来从存储器控制单元910选择一个或多个位线。
编程/读取电路960可以包括编程电路963和读取电路965。编程电路963可以联接到通过列解码器950选择的位线BL,并且通过将编程脉冲提供给存储器单元阵列940的选择的存储器单元来执行编程操作(或数据写入操作)。读取电路965可以联接到通过列解码器950选择的位线BL,感测存储器单元阵列940的选择的存储器单元的电平,并且读取(或输出)存储在其中的数据。读取电路965可以将数据输出到例如控制器710的存储器装置750的外部。
电压供给单元920可以基于存储器控制单元910的电压控制来生成用于对存储器单元阵列940执行编程操作、读取操作和擦除操作的各种类型的电压。电压供给单元920可以生成用于驱动分别通过行解码器930和列解码器950的多个字线WL和多个位线BL的驱动电压(或偏置电压)。然后,电压供给单元920可以向行解码器930和列解码器950提供相应的驱动电压。例如,驱动电压可以包括编程电压、复位电压,读取电压和截止电压。
存储器控制单元910可以基于从控制器710接收的命令CMD、地址ADDR和控制信号CTRL将电压控制信号输出到电压供给单元920。电压控制信号可以用于将数据编程到存储器单元阵列940或从存储器单元阵列940读取数据。从存储器控制单元910输出的电压控制信号可以被提供给编程/读取电路960、电压供给单元920、行解码器930和列解码器950。存储器控制单元910可以控制存储器装置750的整体操作。
根据各个实施例,存储器控制单元910可以基于从控制器710接收的命令CMD、地址ADDR和控制信号CTRL来读取存储在存储器单元阵列940中的数据并且将读取数据输出到控制器710。此时,存储器控制单元910可以将用于从存储器单元阵列940读取数据的电压控制信号输出到电压供给单元920。
当发生读取错误时,存储器控制单元910可以接收关于从控制器710提供的用于读取重试的读取电压电平的信息,即,电压控制信号,并且将电压控制信号输出到电压供给单元920,使得相应的读取电压被供给到存储器单元阵列940。
根据各个实施例,读取重试表可以被包括在如图7A和图7B所示的存储器控制器710中。可选地,读取重试表可以被包括在存储器装置750中。
图10是示出根据实施例的读取重试操作的流程的简图。该读取重试操作可以由图7A和图7B所示的存储器控制器710和/或图8所示的SSD 800的控制器执行。
参照图10,在包括在例如图7A和图7B的750的存储器装置中的多个存储区域中的任何一个存储区域中可能发生读取错误。
在步骤1010处,当发生读取错误时,控制器可以基于关于发生错误的存储区域(例如,块或页面)的状态信息1005来分别确定多个不同类型的缺陷的发生可能性。即,控制器可以确定针对发生错误的区域的每种缺陷类型的发生可能性。
在步骤1020处,控制器可以通过按照发生可能性的降序分类多个缺陷来重新调整读取重试顺序。
在步骤1030处,控制器可以根据分类的缺陷顺序来执行读取重试操作。控制器可以根据分类的缺陷顺序来在包括在读取重试表中的多个读取重试集中选择读取重试集,并且使用选择的读取重试集来对发生读取错误的存储区域执行读取重试操作。
图11是示出根据实施例的状态跟踪器1100的简图。状态跟踪器1100可对应于图7B所示的状态跟踪器722和/或图8所示的状态跟踪器822。
参照图11,状态跟踪器1100可以跟踪和写入关于包括在存储器装置中的多个存储区域(例如,块、管芯或页面)的状态信息。状态跟踪器1100可以跟踪和写入包括第一状态值1110至第三状态值1130的状态信息。在一些实施例中,状态信息可以包括三种类型的状态值。然而,本实施例不限于此。
第一状态值1110可以包括擦除/写入(E/W)循环计数。E/W循环计数可以包括针对一个块的E/W循环计数。第二状态值1120可以包括读取计数。读取计数可以包括针对一个页面的读取计数。第三状态值1130可以包括操作温度。操作温度可以包括由SSD 800的控制器或闪存阵列850测量的温度值。
图12是示出由图11所示的状态跟踪器1100将状态信息写入存储器装置的存储区域中的每一个的示例的简图。在各个实施例中,状态信息可以被存储在状态跟踪器1100内或状态跟踪器1100的外部的表(未示出)中。
参照图12,各种状态信息可以被写入包括在存储器装置中的多个区域(例如,N个区域)中的每一个。各种状态信息可以包括已经参照图11描述的擦除/写入(E/W)计数、读取计数和操作温度。
图13是示出根据实施例的基于包括在存储器装置中的每个区域中的每个可能缺陷的可能性,在存储区域中的每一个中判定读取错误的发生可能性的示例的简图。可以由图7B所示的读取重试单元724和/或图8所示的读取重试单元832来进行这种判定。
参照图13,读取重试单元可以基于关于包括在存储器装置中的多个存储区域的状态信息来分别判定多个不同类型缺陷的发生可能性(或概率),并且以表格的形式存储判定结果。可以响应于当关于存储区域中的每一个的状态信息被状态跟踪器722或822更新时来更新这样的表格。
对于第一存储区域Region 1,第一缺陷可具有最高的发生可能性,第二缺陷可具有第二高的发生可能性,第三缺陷可以具有第三高的发生可能性,并且第四缺陷可以具有最低的发生可能性。即,针对第一存储区域Region 1的发生可能性可以具有缺陷1→缺陷2→缺陷3→缺陷4的顺序。
对于第二存储区域Region 2,第二缺陷可以具有最高的发生可能性,第一缺陷可以具有第二高的发生可能性,第三缺陷可以具有第三高的发生可能性,并且第四缺陷可以具有最低的发生可能性。即,针对第二存储区域Region 2的发生可能性可以具有缺陷2→缺陷1→缺陷3→缺陷4的顺序。
对于第三存储区域Region 3,第三缺陷可以具有最高的发生可能性,第四缺陷可以具有第二高的发生可能性,第一缺陷可以具有第三高的发生可能性,并且第二缺陷可以具有最低的发生可能性。即,第三存储区域Region 3的发生可能性可以具有缺陷3→缺陷4→缺陷1→缺陷2的顺序。
对于第N存储区域Region N,第四缺陷可以具有最高的发生可能性,第三缺陷可以具有第二高的发生可能性,第二缺陷可以具有第三高的发生可能性,并且第一缺陷可以具有最低的发生可能性。即,第N存储区域Region N的发生可能性可以具有缺陷4→缺陷3→缺陷2→缺陷1的顺序。
在实施例中,读取重试单元可以将相应的存储区域(例如,块或页面)的可能性判定元素标准化为1和100之间的值,并且将标准化的可能性判定元素与通过将给定权重乘以各个缺陷而获得的结果值进行比较,从而确定各个缺陷的发生可能性(或发生概率)。读取重试单元可以确定具有相对较大结果值的缺陷比具有相对较小结果值的缺陷具有更高的发生可能性。读取重试单元可以确定以下四种类型缺陷的发生可能性。
(缺陷1)耐久性(EN)
1-1)可能性判定元素:块的E/W循环计数
1-2)EN=WEN×(当前E/W循环/最大可允许E/W循环)×100
此处,当前E/W循环可以表示当前的E/W循环,而最大可允许E/W循环可以表示最大允许的E/W循环。
(缺陷2)读取干扰(RD)
2-1)可能性判定元素:针对一个页面的读取计数
2-2)RD=WRD×(当前读取计数/最大可允许读取计数)×100
此处,当前读取计数可以表示当前的读取计数,并且最大可允许读取计数可以表示最大可允许的读取计数。
(缺陷3)交叉温度(CT)
3-1)可能性判定元素:当页面被写入时与当页面被读取时之间的温度差
3-2)CT=WCT×((读取温度-写入温度)/(最大操作温度-最小操作温度))×100
此处,读取温度可以表示在读取操作期间的温度值,写入温度可以表示在写入操作期间的温度值,最大操作温度可以表示最大操作温度值,并且最小操作温度可以表示最小操作温度值。
(缺陷4)数据保留(DR)
4-1)可能性判定元素:在块被写入之后经过的时间
4-2)在DR期间不能测量时间(=断电)
(缺陷5)具有以上错误条件的开放块情况
5-1)当未写入所有块时,特征与当写入所有块时的特征不同。因此,该情况需要标志(sign)。
5-2)在读取错误的情况下,当相应块是开放块时,设置标记。
此处,WEN,WRD和WCT可以表示用于一对一地比较缺陷元素的权重,缺陷元素对第V分布的偏移具有不同水平的影响。可以通过测试来获取权重。
在各个实施例中,由于在数据保留的情况下不存在能够在断电期间测量时间的方法,因此当其它三种缺陷元素的值对应于引起失败的这种水平时,读取重试单元可以优先地考虑数据保留。
在各个缺陷的发生可能性在各个存储区域中被确定之后,读取重试单元可以根据发生可能性来执行读取重试操作。
读取重试单元可以按照降序来分类各个缺陷的标准化值,并且根据分类的顺序来判定读取重试表的条目的应用顺序。即,读取重试单元可以根据分类的缺陷顺序来在包括在读取重试表中的多个读取重试集中选择读取重试集,并且使用选择的读取重试集来执行读取重试操作。例如,当缺陷的发生可能性具有RD>EN>CT的关系时,读取重试单元可以通过按照读取干扰→耐力→温度的顺序应用相应的读取重试集来执行读取重试操作。此外,读取重试单元可根据标准化值来确定甚至针对相同缺陷的读取重试集的应用顺序。例如,当标准化读取干扰RD的值是50时,读取重试单元可以优先地应用与读取干扰的中间水平相对应的读取重试值。并且,当即使EN、RD和CT的标准化值都等于或小于参考值也发生读取错误时,读取重试单元可以考虑数据保留。此外,当设置开放块标记时,读取重试单元可以检查开放块标记,并且应用反映开放块的特征的EN读取重试操作、DR读取重试操作、RD读取重试操作和CT读取重试操作。
图14是示出根据实施例的提供用于多种缺陷类型的读取重试表1400的示例的简图。例如,读取重试表1400可以对应于图7A中所示的读取重试表730和/或图8中所示的读取重试表834。
参照图14,读取重试表1400可以包括多个读取重试(RR)集。例如,读取重试表1400可以包括K个读取重试集1410至1460。多个读取重试集可以分别对应于多种缺陷类型。例如,第一读取重试集1410可以对应于图13的第一缺陷,第二读取重试集1420可以对应于图13的第二缺陷,第三读取重试集1430可以对应于图13的第三缺陷,并且第四读取重试集1440可以对应于图13的第四缺陷。
读取重试单元可以按照发生可能性的降序分类多个缺陷,并且按照分类的缺陷顺序来执行读取重试操作。即,读取重试单元可以根据分类的缺陷顺序来在多个读取重试集中选择读取重试集,并且使用选择的读取重试集来执行读取重试操作。
例如,本实施例可以基于第一读取重试集1410至第四读取重试集1440分别对应于图13中所示的第一缺陷至第四缺陷的假设。在这样的假设下,如图13所示,当第一存储区域Region 1的发生可能性具有缺陷1→缺陷2→缺陷3→缺陷4的顺序时,读取重试单元可以按照第一读取重试集1410→第二读取重试集1420→第三读取重试集1430→第四读取重试集1440的顺序来选择读取重试集。
又例如,如图13所示,当第二存储区域Region 2的发生可能性具有缺陷2→缺陷1→缺陷3→缺陷4的顺序时,读取重试单元可以按照第二读取重试集1420→第一读取重试集1410→第三读取重试集1430→第四读取重试集1440的顺序来选择读取重试集。
又例如,如图13所示,当第三存储区域Region 3的发生可能性具有缺陷3→缺陷4→缺陷1→缺陷2的顺序时,读取重试单元可以按照第三读取重试集1430→第四读取重试集1440→第一读取重试集1410→第二读取重试集1420的顺序来选择读取重试集。
又例如,如图13所示,当第N存储区域Region N的发生可能性具有缺陷4→缺陷3→缺陷2→缺陷1的顺序时,读取重试单元可以按照第四读取重试集1440→第三读取重试集1430→第二读取重试集1420→第一读取重试集1410的顺序来选择读取重试集。
图15是示出根据实施例的读取重试操作的流程图。该操作可以由图7A和图7B所示的存储器控制器710和/或图8所示的SSD 800的控制器执行。在下文中,存储器控制器710和SSD 800的控制器将被统称为“控制器”。
参照图15,在步骤1510处,控制器可以确定在包括在存储器装置中的多个存储区域中的任何一个存储区域中是否发生读取错误。在步骤1520处,当确定发生读取错误时,控制器可以在任何一个存储区域中基于多个不同类型缺陷的发生可能性来分别执行读取重试操作。
在各个实施例中,控制器可以基于关于任何一个存储区域的状态信息来确定各个缺陷的发生可能性。状态信息可以包括擦除/写入(E/W)循环计数、读取计数和温度信息中的一个或多个。
在各个实施例中,控制器可以按照发生可能性的降序分类多个缺陷,并且按照分类的缺陷顺序来执行读取重试操作。
在各个实施例中,控制器可以根据分类的缺陷顺序来在包括在读取重试表中的多个读取重试集中选择读取重试集,并且使用选择的读取重试集来对任何一个存储区域执行读取重试操作。
在各个实施例中,控制器可以将各个缺陷的可能性判定元素标准化,并且通过将给定权重乘以标准化的可能性判定元素来判定各个缺陷的发生可能性。
在各个实施例中,多个缺陷可以包括与E/W循环计数有关的第一缺陷、与读取计数有关的第二缺陷、与在读取操作期间与在写入操作期间之间的温度差异有关的第三缺陷以及与在写入操作之后经过的时间有关的第四缺陷中的两个或更多个。在各个实施例中,当用于第一缺陷至第三缺陷的可能性判定元素的值分别小于预定值时,控制器可以选择第四缺陷,并且使用与选择的第四缺陷相对应的读取重试集对任何一个存储区域执行读取重试操作。
图16是示出根据另一实施例的读取重试操作的流程图。该操作可以由图7A和图7B所示的存储器控制器710和/或图8所示的SSD 800的控制器执行。在下文中,存储器控制器710和SSD 800的控制器将被统称为“控制器”。
参照图16,在步骤1610处,控制器可以确定在包括在存储器装置中的多个存储区域中的任何一个存储区域中是否发生读取错误。在步骤1620处,当确定发生读取错误时,控制器可以基于关于发生读取错误的存储区域的状态信息来分别计算多个不同类型缺陷的发生可能性。状态信息可以包括擦除/写入(E/W)循环计数、读取计数和温度信息中的一个或多个。在各个实施例中,控制器可以将各个缺陷的可能性判定元素标准化,并且通过将给定权重乘以标准化的可能性判定元素来判定各个缺陷的发生可能性。
在步骤1630处,控制器可以按照发生可能性的降序来分类多个缺陷。在各个实施例中,多个缺陷可以包括与E/W循环计数有关的第一缺陷、与读取计数有关的第二缺陷、与在读取操作期间和在写入操作期间之间的温度差异有关的第三缺陷以及与在写入操作之后经过的时间有关的第四缺陷中的两个或更多个。
在步骤1640处,控制器可以在分类的缺陷中选择具有最高发生可能性的缺陷。在步骤1650处,控制器可以选择与选择的缺陷相对应的读取重试集,并且使用选择的读取重试集对任何一个存储区域执行读取重试操作。在步骤1660处,控制器可以确定读取操作是否已经被成功地执行作为步骤1650处的读取重试操作的结果。
当读取重试操作结果指示读取操作已经被成功地执行时,进程可以结束。否则,进程可以返回到步骤S1640。
在返回步骤S1640之后,控制器可以在分类的缺陷中选择具有第二高的发生可能性的缺陷,选择与选择的缺陷相对应的读取重试集,并且使用选择的读取重试集对任何一个存储区域执行读取重试操作。
当发生读取错误时,根据各个实施例的读取重试方法可以确定各个缺陷类型的发生可能性,并且按照发生可能性的降序来执行读取重试操作。根据本实施例的读取重试方法可以预测在存储器装置的存储区域中的每一个中可能发生的缺陷,并且对具有最高的发生可能性的缺陷执行读取重试操作,从而缩短错误校正所需的时间。此外,根据本实施例的读取重试方法可以针对不同的读取错误统一校正时间,并且因此提高读取请求的服务质量(QoS)。
在下文中,将参照图17至图25更详细地描述根据实施例的设置有包括参照图1至图16描述的存储器装置150和控制器130的存储器系统110的数据处理系统和电子设备。
图17至图25是示意性说明根据本公开的各个实施例的图1的数据处理系统的应用示例的简图。
图17是示意性说明包括根据本公开的实施例的存储器系统的数据处理系统的另一示例的简图。图17示意性说明应用根据实施例的存储器系统的存储卡系统。
参照图17,存储卡系统6100可包括连接器6110、存储器控制器6120和存储器装置6130。
更具体地,存储器控制器6120可被连接至通过非易失性存储器实施的存储器装置6130,并被配置成访问存储器装置6130。例如,存储器控制器6120可被配置成控制存储器装置6130的读取操作、写入操作、擦除操作和后台操作。存储器控制器6120可被配置成提供存储器装置6130和主机之间的接口并驱动用于控制存储器装置6130的固件。也就是说,存储器控制器6120可对应于参照图1描述的存储器系统110的控制器130,并且存储器装置6130可对应于参照图1描述的存储器系统110的存储器装置150。
因此,存储器控制器6120可包括随机存取存储器(RAM)、处理单元、主机接口、存储器接口和错误校正单元。存储器控制器6120可进一步包括图5所示的元件。
存储器控制器6120可通过连接器6110与例如图1的主机102的外部装置通信。例如,如参照图1所述,存储器控制器6120可被配置成通过诸如以下的各种通信协议中的一种或多种与外部装置通信:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCIe)、高级技术附件(ATA)、串行ATA、并行ATA、小型计算机系统接口(SCSI)、增强型小型磁盘接口(EDSI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、无线保真(WI-FI)以及蓝牙。因此,根据实施例的存储器系统和数据处理系统可应用于有线/无线电子装置,或者特别是移动电子装置。
存储器装置6130可通过非易失性存储器来实施。例如,存储器装置6130可通过诸如以下的各种非易失性存储器装置来实施:可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)以及自旋转移力矩磁性RAM(STT-MRAM)。存储器装置6130可包括如图1的存储器装置150中的多个管芯。
存储器控制器6120和存储器装置6130可被集成至单个半导体装置中。例如,存储器控制器6120和存储器装置6130可通过被集成到单个半导体装置中来构造固态驱动器(SSD)。另外,存储器控制器6120以及存储器装置6130可构成诸如以下的存储卡:PC卡(例如:个人计算机存储卡国际协会(PCMCIA))、标准闪存(CF)卡、智能媒体卡(例如,SM和SMC)、记忆棒、多媒体卡(例如,MMC、RS-MMC、微型MMC和eMMC)、SD卡(例如,SD、迷你SD、微型SD和SDHC)以及通用闪存(UFS)。
图18是示意性说明包括根据本公开的实施例的存储器系统的数据处理系统的另一示例的简图。
参照图18,数据处理系统6200可包括具有一个或多个非易失性存储器(NVM)的存储器装置6230和用于控制存储器装置6230的存储器控制器6220。图13所示的数据处理系统6200可作为如参照图1所描述的诸如存储卡(例如,CF、SD、微型SD等)或USB装置的存储介质。存储器装置6230可对应于图1所示的存储器系统110中的存储器装置150,并且存储器控制器6220可对应于图1所示的存储器系统110中的控制器130。
存储器控制器6220可响应于主机6210的请求控制对存储器装置6230的读取操作、写入操作或擦除操作,并且存储器控制器6220可包括中央处理器(CPU)6221、作为缓冲存储器6222的随机存取存储器(RAM)、错误校正码(ECC)电路6223、主机接口6224以及作为存储器接口6225的NVM接口。
CPU 6221可控制对存储器装置6230的全部操作,例如读取操作、写入操作、文件系统管理操作和坏页面管理操作。RAM 6222可根据CPU 6221的控制来操作且用作工作存储器、缓冲存储器或高速缓冲存储器。当RAM 6222用作工作存储器时,通过CPU 6221处理的数据可被临时存储在RAM 6222中。当RAM 6222用作缓冲存储器时,RAM 6222可用于缓冲从主机6210传输到存储器装置6230的数据或从存储器装置6230传输到主机6210的数据。当RAM6222用作高速缓冲存储器时,RAM 6222可辅助低速存储器装置6230以高速运行。
ECC电路6223可对应于图1所示的控制器130的ECC单元138。如参照图1所述,ECC电路6223可生成用于校正从存储器装置6230提供的数据的失效位或错误位的错误校正码。ECC电路6223可对提供给存储器装置6230的数据执行错误校正编码,从而形成具有奇偶校验位的数据。奇偶校验位可被存储在存储器装置6230中。ECC电路6223可对从存储器装置6230输出的数据执行错误校正解码。此时,ECC电路6223可使用奇偶校验位来校正错误。例如,如上参照图1所述,ECC电路6223可使用包括诸如以下的编码调制的任何适当的方法来校正错误:低密度奇偶校验(LDPC)码、博斯-查德胡里-霍昆格姆(Bose-Chaudhri-Hocquenghem,BCH)码、涡轮码、里德-所罗门(RS)码、卷积码、递归系统码(RSC)、网格编码调制(TCM)或分组编码调制(BCM)。
存储器控制器6220可通过主机接口6224向主机6210传输数据/接收来自主机6210的数据,并通过NVM接口6225向存储器装置6230传输数据/接收来自存储器装置6230的数据。主机接口6224可通过诸如以下的各种接口协议中的至少一种连接到主机6210:并行高级技术附件(PATA)总线、串行高级技术附件(SATA)总线、小型计算机系统接口(SCSI)、通用串行总线(USB)、高速外围组件互连(PCIe)或NAND接口。存储器控制器6220可利用诸如无线保真(WiFi)或长期演进(LTE)的移动通信协议具有无线通信功能。存储器控制器6220可连接至外部装置,例如主机6210或另一个外部装置,然后向外部装置传输数据/接收来自外部装置的数据。特别地,由于存储器控制器6220被配置成通过各种通信协议中的一种或多种与外部装置通信,因此根据实施例的存储器系统和数据处理系统可被应用于有线/无线电子装置或特别是移动电子装置。
图19是示意性说明包括根据本公开的实施例的存储器系统的数据处理系统的另一示例的简图。图19示意性示出应用根据实施例的存储器系统的固态驱动器(SSD)6300。
参照图19,SSD 6300可包括控制器6320和包括多个非易失性存储器的存储器装置6340。控制器6320可对应于图1的存储器系统110中的控制器130,并且存储器装置6340可对应于图1的存储器系统中的存储器装置150。
更具体地,控制器6320可通过多个通道CH1至CHi连接至存储器装置6340。控制器6320可包括处理器6321、缓冲存储器6325、错误校正码(ECC)电路6322、主机接口6324、以及作为存储器接口6326的非易失性存储器接口。
缓冲存储器6325可临时存储从主机6310提供的数据或从包括在存储器装置6340中的多个闪速存储器NVM提供的数据,或者临时存储多个闪速存储器NVM的元数据,例如,包括映射表的映射数据。缓冲存储器6325可由诸如动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)、双倍数据速率(DDR)SDRAM、低功率双倍数据速率(LPDDR)SDRAM和图形随机存取存储器(GRAM)的易失性存储器来实施,或者由诸如铁电随机存取存储器(FRAM)、电阻式随机存取存储器(ReRAM)、自旋转移扭矩磁性随机存取存储器(STT-MRAM)和相变随机存取存储器(PRAM)的非易失性存储器来实施。为便于描述,图14示出缓冲存储器6325存在于控制器6320内部。然而,缓冲存储器6325可存在于控制器6320的外部。
ECC电路6322可在编程操作期间计算待被编程到存储器装置6340的数据的ECC值,在读取操作期间基于ECC值对从存储器装置6340读取的数据执行错误校正操作,并在失效数据恢复操作期间对从存储器装置6340恢复的数据执行错误校正操作。
主机接口6324可提供与诸如主机6310的外部装置的接口功能,并且非易失性存储器接口6326可提供与通过多个通道连接的存储器装置6340的接口功能。
此外,可提供应用了图1的存储器系统110的多个SSD 6300来实施数据处理系统,例如,独立磁盘冗余阵列(RAID)系统。此时,RAID系统可包括多个SSD 6300和用于控制多个SSD 6300的RAID控制器。当RAID控制器响应于从主机6310提供的写入命令执行编程操作时,RAID控制器可根据多个RAID级别,即,从主机6310提供的写入命令的RAID级别信息,在SSD 6300中选择一个或多个存储器系统或SSD 6300,并将对应于写入命令的数据输出到选择的SSD 6300。此外,当RAID控制器响应于从主机6310提供的读取命令执行读取操作时,RAID控制器可根据多个RAID级别,即,从主机6310提供的读取命令的RAID级别信息,在SSD6300中选择一个或多个存储器系统或SSD 6300,并将从所选择的SSD 6300读取的数据提供给主机6310。
图20是示意性说明包括根据本公开的实施例的存储器系统的数据处理系统的另一示例的简图。图20示意性说明应用了根据实施例的存储器系统的嵌入式多媒体卡(eMMC)。
参照图20,eMMC 6400可包括控制器6430和通过一个或多个NAND闪速存储器实施的存储器装置6440。控制器6430可对应于图1的存储器系统110中的控制器130,并且存储器装置6440可对应于图1的存储器系统110中的存储器装置150。
更具体地,控制器6430可通过多个通道连接至存储器装置6440。控制器6430可包括一个或多个内核6432、主机接口6431和诸如NAND接口6433的存储器接口。
内核6432可控制eMMC 6400的全部操作,主机接口6431可提供控制器6430和主机6410之间的接口功能,并且NAND接口6433可提供存储器装置6440和控制器6430之间的接口功能。例如,主机接口6431可用作并行接口,例如参照图1所描述的MMC接口。此外,主机接口6431可用作诸如超高速等级1(UHS-I)/UHS等级2(UHS-II)和通用闪存(UFS)接口的串行接口。
图21至图24是示意性说明包括根据本实施例的存储器系统的数据处理系统的其它示例的简图。图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所示的存储器系统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可通过UFS接口,例如,移动行业处理器接口(MIPI)中的MIPI M-PHY和MIPI统一协议(UniPro)彼此通信。此外,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处的链路层交换来彼此通信。在实施例中,为便于描述,已经例示了其中一个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可通过UniPro处的交换模块6640的链路层交换来彼此通信。在实施例中,为便于描述,已经例示了其中一个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可通过UniPro处的交换模块6740的链路层交换来彼此通信,并且交换模块6740可在UFS装置6720内部或外部与UFS装置6720集成为一个模块。在实施例中,为便于描述,已经例示了其中一个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交换来彼此通信。在实施例中,为便于描述,已经例示了其中一个UFS装置6820连接至主机6810且一个UFS卡6830连接至UFS装置6820的配置。然而,多个UFS装置可并联或以星型形式连接至主机6810,或串联或以链型形式连接至主机6810,并且多个UFS卡可并联或以星型形式连接至UFS装置6820,或串联或以链型形式连接至UFS装置6820。
图25是示意性说明包括根据本公开的实施例的存储器系统的数据处理系统的另一示例的简图。图25是示意性说明应用了根据实施例的存储器系统的用户系统的简图。
参照图25,用户系统6900可包括应用处理器6930、存储器模块6920、网络模块6940、存储模块6950和用户接口6910。
更具体地,应用处理器6930可驱动包括在诸如OS的用户系统6900中的组件,并且包括控制包括在用户系统6900中的组件的控制器、接口和图形引擎。应用处理器6930可作为片上系统(SoC)被提供。
存储器模块6920可用作用户系统6900的主存储器、工作存储器、缓冲存储器或高速缓冲存储器。存储器模块6920可包括诸如动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)、双倍数据速率(DDR)SDRAM、DDR2SDRAM、DDR3SDRAM、低功率双倍数据速率(LPDDR)SDRAM、LPDDR2SDRAM和LPDDR3SDRAM的易失性随机存取存储器,或者诸如相变随机存取存储器(PRAM)、电阻式随机存取存储器(ReRAM)、磁性随机存取存储器(MRAM)和铁电随机存取存储器(FRAM)的非易失性随机存取存储器。例如,可基于堆叠式封装(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描述的存储器系统110。此外,存储模块6950可被实施为如上参照图11至图24所述的SSD、eMMC和UFS。
用户接口6910可包括用于向应用处理器6930输入数据或命令或者用于将数据输出到外部装置的接口。例如,用户接口6910可包括诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、摄像机、麦克风、陀螺仪传感器、振动传感器和压电元件的用户输入接口,以及诸如液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、发光二极管(LED)、扬声器和电动机的用户输出接口。
此外,当图1的存储器系统110应用于用户系统6900的移动电子装置时,应用处理器6930可控制移动电子装置的全部操作,并且网络模块6940可用作用于控制与外部装置的有线和/或无线通信的通信模块。用户接口6910可在移动电子装置的显示/触摸模块上显示通过处理器6930处理的数据或支持从触摸面板接收数据的功能。
虽然为了说明的目的已经描述各个实施例,但是对于本领域技术人员显而易见的是,在不脱离如所附权利要求所限定的本发明的精神和范围的情况下,可以进行各种其它实施例、改变和变型。
Claims (17)
1.一种存储器系统,其包括:
存储器装置,其包括多个存储区域;以及
控制器,其联接在主机和所述存储器装置之间,并且被配置为提供读取重试表,所述读取重试表包括多个读取重试集,所述多个读取重试集中的每个对应于多个不同缺陷中的每个;确定所述多个存储区域中的任何一个中是否发生读取错误;基于发生错误的存储区域的状态信息来确定所述多个不同缺陷的每个的发生可能性;基于所述发生可能性来确定应用所述多个读取重试集的顺序;以及基于所述顺序来对所述发生错误的存储区域执行读取重试操作。
2.根据权利要求1所述的存储器系统,其中所述状态信息包括擦除/写入循环计数,即E/W循环计数、读取计数和温度信息中的一个或多个。
3.根据权利要求1所述的存储器系统,其中所述控制器按照多个缺陷的发生可能性的降序分类所述多个缺陷,并且根据所分类的缺陷顺序来执行读取重试操作。
4.根据权利要求3所述的存储器系统,其中所述控制器被配置成:
根据所分类的缺陷顺序在多个读取重试集中选择读取重试集;以及
使用所选择的读取重试集对所述任何一个存储区域执行读取重试操作。
5.根据权利要求4所述的存储器系统,其中所述多个缺陷包括以下中的两个或更多个缺陷:
第一缺陷,其与擦除/写入循环计数,即E/W循环计数有关;
第二缺陷,其与读取计数有关;
第三缺陷,其与读取操作期间与写入操作期间之间的温度差异有关;以及
第四缺陷,其与在写入操作之后经过的时间有关。
6.根据权利要求5所述的存储器系统,其中所述控制器被配置成将各个缺陷的可能性判定元素标准化,并且被配置成通过将所标准化的可能性判定元素乘以给定权重来分别判定所述各个缺陷的发生可能性。
7.根据权利要求6所述的存储器系统,其中所述第一缺陷EN的发生可能性、所述第二缺陷RD的发生可能性和所述第三缺陷CT的发生可能性被如下判定:
EN=WEN×(当前E/W循环/最大可允许E/W循环)×100,
RD=WRD×(当前读取计数/最大可允许读取计数)×100,以及
CT=WCT×((读取温度-写入温度)/(最大操作温度-最小操作温度))×100,
其中当前E/W循环表示所述当前的擦除/写入循环,
最大可允许E/W循环表示所述最大可允许的擦除/写入循环计数,
当前读取计数表示当前的读取计数,
最大可允许读取次数表示最大可允许的读取次数,
读取温度表示在读取操作期间的温度值,
写入温度表示在写入操作期间的温度值,
最大操作温度表示所述最大操作温度值,
最小操作温度表示所述最小操作温度值,以及
WEN、WRD和WCT分别表示所述第一缺陷至所述第三缺陷的给定权重。
8.一种存储器控制器,其包括:
读取重试表,其包括多个读取重试集,所述多个读取重试集中的每个对应于多个不同缺陷中的每个;以及
处理器,其被配置成:
确定存储器装置中包括的多个存储区域中的任何一个中是否发生读取错误;
基于发生错误的存储区域的状态信息来确定所述多个不同缺陷的每个的发生可能性;
基于所述发生可能性来确定应用所述多个读取重试集的顺序;并且基于所述顺序来对所述发生错误的存储区域执行读取重试操作。
9.根据权利要求8所述的存储器控制器,其中所述状态信息包括擦除/写入循环计数,即E/W循环计数、读取计数和温度信息中的一个或多个。
10.根据权利要求8所述的存储器控制器,其中所述处理器被配置成按照发生可能性的降序来分类所述多个缺陷。
11.根据权利要求10所述的存储器控制器,其中所述多个缺陷包括以下中的两个或更多个缺陷:
第一缺陷,其与擦除/写入循环计数,即E/W循环计数有关;
第二缺陷,其与读取计数有关;
第三缺陷,其与读取操作期间与写入操作期间之间的温度差异有关;以及
第四缺陷,其与在写入操作之后经过的时间有关。
12.根据权利要求11所述的存储器控制器,其中所述处理器被配置成:
将所述各个缺陷的可能性判定元素标准化;以及
通过将所标准化的可能性判定元素乘以给定权重来分别判定所述各个缺陷的发生可能性。
13.一种存储器控制器的操作方法,其包括:
提供读取重试表,所述读取重试表包括多个读取重试集,所述多个读取重试集中的每个对应于多个不同缺陷中的每个;
确定存储器装置中包括的多个存储区域中的任何一个中是否发生读取错误;
基于发生错误的存储区域的状态信息来确定所述多个不同缺陷的每个的发生可能性;
基于所述发生可能性来确定应用所述多个读取重试集的顺序;并且
基于所述顺序来对所述发生错误的存储区域执行读取重试操作。
14.根据权利要求13所述的操作方法,其中所述状态信息包括擦除/写入循环计数,即E/W循环计数、读取计数和温度信息中的一个或多个。
15.根据权利要求13所述的操作方法,其中分类所述多个缺陷包括按照发生可能性的降序来分类所述多个缺陷。
16.根据权利要求15所述的操作方法,其中所述多个缺陷包括以下中的两个或更多个缺陷:
第一缺陷,其与擦除/写入循环计数,即E/W循环计数有关;
第二缺陷,其与读取计数有关;
第三缺陷,其与读取操作期间与写入操作期间之间的温度差异有关;以及
第四缺陷,其与在写入操作之后经过的时间有关。
17.根据权利要求16所述的操作方法,其中分类所述多个缺陷包括将所述各个缺陷的可能性判定元素标准化,并且通过将所标准化的可能性判定元素乘以给定权重来分别判定所述各个缺陷的发生可能性。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2017-0039915 | 2017-03-29 | ||
KR1020170039915A KR20180110412A (ko) | 2017-03-29 | 2017-03-29 | 메모리 시스템 및 이의 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108694017A CN108694017A (zh) | 2018-10-23 |
CN108694017B true CN108694017B (zh) | 2021-06-01 |
Family
ID=63669428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711429361.8A Active CN108694017B (zh) | 2017-03-29 | 2017-12-26 | 存储器系统及其操作方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10379955B2 (zh) |
KR (1) | KR20180110412A (zh) |
CN (1) | CN108694017B (zh) |
TW (1) | TWI756297B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11237908B2 (en) * | 2017-03-29 | 2022-02-01 | SK Hynix Inc. | Memory system and operating method thereof |
US10740178B2 (en) * | 2017-10-05 | 2020-08-11 | Western Digital Technologies, Inc. | Self-prioritizing adaptive retry threshold adjustment |
JP2019215662A (ja) * | 2018-06-12 | 2019-12-19 | 株式会社日立製作所 | 不揮発性メモリデバイス、及びインターフェース設定方法 |
CN111104245B (zh) * | 2018-10-29 | 2023-07-14 | 建兴储存科技(广州)有限公司 | 固态存储装置的读取重试方法 |
KR20200053965A (ko) * | 2018-11-09 | 2020-05-19 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
EP3654517B1 (en) * | 2018-11-19 | 2021-06-02 | Maschinenfabrik Reinhausen GmbH | Operating a modular multilevel converter |
JP2021034092A (ja) * | 2019-08-29 | 2021-03-01 | 株式会社東芝 | 磁気ディスク装置、及び磁気ディスク装置のリードエラーリトライ方法 |
TWI724538B (zh) * | 2019-09-11 | 2021-04-11 | 亞東技術學院 | 以實體態樣編寫計算機程序的系統及方法 |
TWI728618B (zh) * | 2019-12-24 | 2021-05-21 | 睿寬智能科技有限公司 | 管理壞塊的方法 |
US11385984B2 (en) * | 2020-02-24 | 2022-07-12 | Western Digital Technologies, Inc. | Variable read scan for solid-state storage device quality of service |
KR20210112872A (ko) | 2020-03-06 | 2021-09-15 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그 동작 방법 |
KR20210123884A (ko) | 2020-04-06 | 2021-10-14 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그 동작 방법 |
US11810625B2 (en) * | 2020-10-09 | 2023-11-07 | Seagate Technology Llc | Solid-state memory with intelligent cell calibration |
KR20220077766A (ko) | 2020-12-02 | 2022-06-09 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치, 컨트롤러 및 이들을 포함하는 메모리 시스템의 동작 방법 |
CN112530499A (zh) * | 2020-12-09 | 2021-03-19 | 合肥康芯威存储技术有限公司 | 一种数据读取方法及计算机可读存储设备 |
CN112562762A (zh) * | 2020-12-23 | 2021-03-26 | 江苏国科微电子有限公司 | 一种wl阈值电压分布的获取方法、系统及相关组件 |
US20240045754A1 (en) * | 2022-08-03 | 2024-02-08 | Micron Technology, Inc. | Classification-based error recovery with reinforcement learning |
CN116880781B (zh) * | 2023-09-08 | 2023-12-26 | 合肥康芯威存储技术有限公司 | 一种存储设备及其控制方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1949368A (zh) * | 2005-10-14 | 2007-04-18 | 日立环球储存科技荷兰有限公司 | 磁盘驱动器及用于写/读数据的方法 |
CN106205731A (zh) * | 2016-06-27 | 2016-12-07 | 联想(北京)有限公司 | 信息处理方法及存储设备 |
CN106251903A (zh) * | 2015-06-05 | 2016-12-21 | 爱思开海力士有限公司 | 存储系统及其操作方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4842563B2 (ja) * | 2005-05-16 | 2011-12-21 | パナソニック株式会社 | メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法 |
WO2009002940A2 (en) * | 2007-06-25 | 2008-12-31 | Sandisk Corporation | Systems and methods of reading nonvolatile memory |
US7613045B2 (en) | 2007-11-26 | 2009-11-03 | Sandisk Il, Ltd. | Operation sequence and commands for measuring threshold voltage distribution in memory |
US9183133B2 (en) * | 2007-11-28 | 2015-11-10 | Seagate Technology Llc | System, method, and computer program product for increasing spare space in memory to extend a lifetime of the memory |
JP5452348B2 (ja) | 2009-07-27 | 2014-03-26 | ルネサスエレクトロニクス株式会社 | 半導体記憶装置 |
US8737136B2 (en) * | 2010-07-09 | 2014-05-27 | Stec, Inc. | Apparatus and method for determining a read level of a memory cell based on cycle information |
KR101984900B1 (ko) | 2012-07-24 | 2019-05-31 | 삼성전자 주식회사 | 메모리 장치 및 상기 메모리 장치의 독출 전압 결정 방법 |
KR102028128B1 (ko) | 2012-08-07 | 2019-10-02 | 삼성전자주식회사 | 불휘발성 랜덤 액세스 메모리 및 낸드 플래시 메모리를 포함하는 메모리 시스템의 동작 방법 |
KR102131802B1 (ko) | 2013-03-15 | 2020-07-08 | 삼성전자주식회사 | 비휘발성 메모리 장치의 데이터 독출 방법, 비휘발성 메모리 장치, 및 메모리 시스템의 구동 방법 |
KR102065664B1 (ko) | 2013-08-09 | 2020-01-13 | 삼성전자 주식회사 | 메모리 장치의 열화 상태 추정 방법 및 이를 이용한 메모리 시스템에서의 웨어 레벨링 방법 |
KR102192910B1 (ko) | 2013-09-10 | 2020-12-18 | 에스케이하이닉스 주식회사 | 반도체 장치, 메모리 시스템 및 이의 동작 방법 |
TWI523025B (zh) * | 2013-12-27 | 2016-02-21 | 慧榮科技股份有限公司 | 資料儲存裝置及其錯誤校正方法 |
KR102188061B1 (ko) * | 2014-07-29 | 2020-12-07 | 삼성전자 주식회사 | 메모리 장치, 메모리 시스템 및 메모리 장치의 동작방법 |
US9916237B2 (en) * | 2014-12-12 | 2018-03-13 | Sandisk Technologies Llc | Model based configuration parameter management |
US10229749B2 (en) | 2017-03-31 | 2019-03-12 | Samsung Electronics Co., Ltd. | Nonvolatile memory storage system |
-
2017
- 2017-03-29 KR KR1020170039915A patent/KR20180110412A/ko unknown
- 2017-11-15 US US15/813,502 patent/US10379955B2/en active Active
- 2017-11-15 TW TW106139562A patent/TWI756297B/zh active
- 2017-12-26 CN CN201711429361.8A patent/CN108694017B/zh active Active
-
2019
- 2019-08-06 US US16/532,965 patent/US11086720B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1949368A (zh) * | 2005-10-14 | 2007-04-18 | 日立环球储存科技荷兰有限公司 | 磁盘驱动器及用于写/读数据的方法 |
CN106251903A (zh) * | 2015-06-05 | 2016-12-21 | 爱思开海力士有限公司 | 存储系统及其操作方法 |
CN106205731A (zh) * | 2016-06-27 | 2016-12-07 | 联想(北京)有限公司 | 信息处理方法及存储设备 |
Also Published As
Publication number | Publication date |
---|---|
TWI756297B (zh) | 2022-03-01 |
US10379955B2 (en) | 2019-08-13 |
US20180285197A1 (en) | 2018-10-04 |
CN108694017A (zh) | 2018-10-23 |
KR20180110412A (ko) | 2018-10-10 |
TW201837724A (zh) | 2018-10-16 |
US11086720B2 (en) | 2021-08-10 |
US20190361778A1 (en) | 2019-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108694017B (zh) | 存储器系统及其操作方法 | |
US10157024B2 (en) | Memory system and operating method thereof | |
US11934271B2 (en) | Memory system and operating method thereof | |
CN108121665B (zh) | 存储器系统及其操作方法 | |
US10635333B2 (en) | Memory system | |
US10606710B2 (en) | Controller, memory system and operating method thereof | |
US10923192B2 (en) | Memory system and operating method thereof | |
US20180074718A1 (en) | Memory system and method for operating the same | |
CN111400200A (zh) | 控制器及其操作方法 | |
US20190107961A1 (en) | Memory system and operating method of the same | |
US10901633B2 (en) | Memory system for increasing a read reclaim count | |
US10558382B2 (en) | Memory system and operating method thereof | |
CN109390003B (zh) | 存储器系统及其操作方法 | |
US10402267B2 (en) | Memory system and operating method thereof | |
US10776049B2 (en) | Memory system and method of operating the same | |
US20200050515A1 (en) | Memory system and operation method thereof | |
CN110045914B (zh) | 存储器系统及其操作方法 | |
CN109656470B (zh) | 存储器系统及其操作方法 | |
US10489084B2 (en) | Method and system for reclaiming memory using read counts | |
CN108628755B (zh) | 存储器系统 | |
US10977117B2 (en) | Memory device, a memory system and an operating method thereof | |
CN110197695B (zh) | 存储器系统及其操作方法 | |
US10748639B2 (en) | Controller, operating method thereof and memory system including the controller | |
US20180074711A1 (en) | Memory system and method for operating the same | |
US10585794B2 (en) | Memory system and operating method of memory system |
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 |