CN114300032A - 一种检查存储介质失效的方法、装置和固态硬盘 - Google Patents
一种检查存储介质失效的方法、装置和固态硬盘 Download PDFInfo
- Publication number
- CN114300032A CN114300032A CN202111626136.XA CN202111626136A CN114300032A CN 114300032 A CN114300032 A CN 114300032A CN 202111626136 A CN202111626136 A CN 202111626136A CN 114300032 A CN114300032 A CN 114300032A
- Authority
- CN
- China
- Prior art keywords
- operation data
- storage medium
- flash memory
- read
- information corresponding
- 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.)
- Pending
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及数据存储领域,主要提供一种检查存储介质失效的方法、装置和固态硬盘,应用于固态硬盘。通过获取闪存介质的操作数据,并根据操作数据获取存储介质的错误计数信息,然后根据错误计数信息检测是否触发对存储介质的失效诊断,当确定对存储介质进行失效诊断时,从存储介质的若干闪存块中获取已经执行写操作的闪存块,并对已经执行了写操作的闪存块执行读操作,最后根据读操作的结果检查存储介质是否失效。本发明通过对已经执行过了写操作的闪存块进行诊断,实现了在不影响固态硬盘性能的条件下,对闪存介质中的存储介质进行失效诊断,从而避免了因检查存储介质失效不及时而导致的固态硬盘数据丢失和出现宕机,提高了固态硬盘的稳定性。
Description
技术领域
本发明涉及数据存储领域,特别是涉及一种检查存储介质失效的方法、装置和固态硬盘。
背景技术
固态硬盘(Solid State Drives,SSD),是采用固态电子存储芯片阵列而制成的硬盘,固态硬盘包括控制单元和存储单元(FLASH存储芯片或DRAM存储芯片)。目前固态硬盘系统中有相当部分是存在动态随机存取存储器(Dynamic Random Access Memory,DRAM)的,所以SSD有较大的数据缓存空间用来缓存数据。
闪存(NAND Flash)是固态硬盘的主要存储介质。闪存目前已发展到3D TLC,其IO接口速度发展到1600MT;其发展也带来一些问题,例如在使用的过程中出现存储介质(die)失效的情况,其中,所述die指的是接收和执行内存命令的基本单元,所述die失效指的是读报错、写报错和擦报错。若不及时处理die失效的问题,则会在SSD运行过程中出现大量的出错导致宕机和数据丢失。
现有的固态硬盘的主控或者固件,并没有提供die失效的接口,使得软件无法得知die是否失效,导致SSD宕机和数据丢失,从而降低了SSD的稳定性。
发明内容
本发明实施例提供一种检查存储介质失效的方法、装置和固态硬盘,旨在解决现有技术中SSD无法及时得知存储介质是否失效,从而使得稳定性低的技术问题。
为解决上述技术问题,本发明实施方式采用的一个技术方案是:提供一种检查存储介质失效的方法,应用于固态硬盘,所述固态硬盘的存储介质包括若干个闪存块,所述方法包括:获取所述闪存介质的操作数据,并根据所述操作数据获取所述存储介质的错误计数信息;根据所述错误计数信息检测是否触发对所述存储介质的失效诊断;当确定对所述存储介质进行失效诊断时,对已经执行了写操作的所述闪存块执行读操作;根据所述读操作的结果检查所述存储介质是否失效。
可选的,所述获取所述闪存介质的操作数据,并根据所述操作数据获取所述存储介质的错误计数信息,包括:获取所述闪存介质对应的写操作数据、读操作数据和擦除操作数据;统计所述写操作数据对应的错误计数信息,所述读操作数据对应的错误计数信息,以及所述擦除操作数据对应的错误计数信息。
可选的,所述根据所述错误计数信息检测是否触发对所述存储介质的失效诊断,包括:获取所述写操作数据对应的写权重、所述读操作数据对应的读权重以及所述擦除操作数据对应的擦权重;计算所述写操作数据对应的错误计数信息与所述写权重的第一乘积;计算所述读操作数据对应的错误计数信息与所述读权重的第二乘积;计算所述擦除操作数据对应的错误计数信息与所述擦权重的第三乘积;当所述第一乘积大于写阈值,和/或所述第二乘积大于读阈值,和/或所述第三乘积大于擦阈值时,则触发对所述存储介质的失效诊断。
可选的,所述方法还包括:统计所述写操作数据对应的错误计数信息、所述读操作数据对应的错误计数信息以及所述擦除操作数据对应的错误计数信息分别对应的单位时间内的计数增长速率;根据所述计数增长速率分别确定所述写操作数据对应的写权重、所述读操作数据对应的读权重以及所述擦除操作数据对应的擦权重。
可选的,所述对已经执行了写操作的所述闪存块执行读操作,具体包括:根据端口的带宽压力从已经执行了写操作的闪存块中确定执行读操作的闪存块的数量,并对所述确定的所述闪存块执行读操作。
可选的,所述根据所述读操作的结果检查所述存储介质是否失效,包括:根据所述读操作的结果检查读的数据是否正确,以及位置是否读偏;当读的数据错误和/或读的位置读偏时,则记录并更新所述读操作对应的错误计数信息;当记录的所述读操作对应的错误计数信息大于第一设定阈值时,则记录并更新所述闪存块对应的错误计数信息;当记录的所述闪存块对应的错误计数信息大于第二设定阈值时,则确定所述存储介质失效。
为解决上述技术问题,本发明实施方式采用的另一个技术方案是:提供一种检查存储介质失效的装置,应用于固态硬盘,所述固态硬盘的存储介质包括若干个闪存块,所述装置包括:第一获取模块,用于获取所述闪存介质的操作数据,并根据所述操作数据获取所述存储介质的错误计数信息;触发模块,用于根据所述错误计数信息检测是否触发对所述存储介质的失效诊断;执行模块,用于当确定对所述存储介质进行失效诊断时,对已经执行了写操作的所述闪存块执行读操作;判定模块,用于根据所述读操作的结果检查所述存储介质是否失效。
可选的,所述第一获取模块包括:第一获取单元,用于获取所述闪存介质对应的写操作数据、读操作数据和擦除操作数据;统计单元,用于统计所述写操作数据对应的错误计数信息,所述读操作数据对应的错误计数信息,以及所述擦除操作数据对应的错误计数信息。
可选的,所述触发模块包括:第二获取单元,用于获取所述写操作数据对应的写权重、所述读操作数据对应的读权重以及所述擦除操作数据对应的擦权重;第一计算单元,用于计算所述写操作数据对应的错误计数信息与所述写权重的第一乘积;第二计算单元,用于计算所述读操作数据对应的错误计数信息与所述读权重的第二乘积;第三计算单元,计算所述擦除操作数据对应的错误计数信息与所述擦权重的第三乘积;判定单元,用于当所述第一乘积大于写阈值,和/或所述第二乘积大于读阈值,和/或所述第三乘积大于擦阈值时,则触发对所述存储介质的失效诊断。
为解决上述技术问题,本发明实施方式采用的又一个技术方案是:提供一种固态硬盘,包括:闪存介质;以及,主控制器,与所述闪存介质连接;其中,所述主控制器包括:至少一个处理器;以及缓存器,与所述至少一个处理器连接;其中,所述缓存器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的检查存储介质失效的方法。
区别于相关技术的情况,本发明实施例提供一种检查存储介质失效的方法、装置和固态硬盘,应用于固态硬盘,通过获取所述闪存介质的操作数据,并根据所述操作数据获取所述存储介质的错误计数信息,然后根据所述错误计数信息检测是否触发对所述存储介质的失效诊断,当确定对所述存储介质进行失效诊断时,从所述存储介质的若干闪存块中获取已经执行写操作的闪存块,并对已经执行了写操作的所述闪存块执行读操作,最后根据所述读操作的结果检查所述存储介质是否失效。本发明实施例通过对已经执行过了写操作的闪存块进行诊断,实现了在不影响固态硬盘性能的条件下,对闪存介质中的存储介质进行失效诊断,从而避免了因存储介质失效检查不及时而导致的固态硬盘数据丢失和出现宕机,提高了固态硬盘的稳定性。
附图说明
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明实施例提供的一种固态硬盘的结构示意图;
图2是本发明实施例提供的关于闪存介质的逻辑布局示意图。
图3是本发明实施例提供的一种检查存储介质失效的方法的流程图;
图4是本发明其中一实施例提供的触发失效诊断的流程图;
图5是本实施例提供的一种闪存介质中的某一存储介质失效的示意图;
图6是本发明实施例提供的一种检查存储介质失效的装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互组合,均在本发明的保护范围之内。另外,虽然在装置示意图中进行了功能模块的划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置示意图中的模块划分,或流程图中的顺序执行所示出或描述的步骤。
除非另有定义,本说明书所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是用于限制本发明。本说明书所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
典型的固态硬盘(Solid State Drives,SSD)通常包括固态硬盘控制器(主控制器)、闪存阵列、缓存模块以及其他外围模块。
其中,固态硬盘控制器用于作为控制运算模块,管理SSD内部系统;闪存阵列(NANDFlash),作为存储模块,用于存储数据,包括用户数据和系统数据,闪存阵列一般呈现多个通道(Channel,简写CH),一个通道独立连接一组NAND Flash,例如CH0/CH1……CHx。其中闪存(NAND Flash),其特性是写入之前,必须进行擦除,不能覆盖写,且每个闪存擦除次数有限;缓存模块,用于缓存映射表,所述缓存模块一般为动态随机存取存储器(DynamicRandom Access Memory,DRAM)。其他外围模块可以包括传感器、寄存器等部件。
闪存(NAND Flash)是非易失性存储介质,其特点是在一个单元内可以存储电子,其存储电子的数量可以呈现为电压值,其电压值可以分为多个区域。如分为两个区域,那么就代表仅存储一个bit(此类Flash称之为SLC),如果分为4个区域,则代表存储2个bit(此类Flash称之为MLC),如果分为8个区域,则代表存储3个bit(此类Flash称之为TLC),以此类推以2的幂次方作为存储bit数量来确定分布区域数量。
当数据写入后,存储电子的数量可以呈现为电压值,而读时值的判定是依靠所在单元的电压值与参考电压(或称阈值电压)的比较来判断。
一个存储介质die(也可以叫做LUN)包括若干个闪存面plane,每个闪存面plane包括若干个闪存块block,每个block包括若干个page。其中,所述存储介质die/LUN指的是接收和执行闪存命令的基本单元,并且所述存储介质die/LUN一次只能执行一个命令。
请参阅图1,图1是本发明实施例提供的一种固态硬盘的结构示意图,如图1所示,该固态硬盘100包括闪存介质110和与所述闪存介质连接的主控制器120。其中,所述固态硬盘100通过有线或无线的方式与所述主机200通信连接,用以实现数据交互。
闪存介质110,作为所述固态硬盘100的存储介质,也称作闪存、Flash、Flash存储器或Flash颗粒,属于存储器件的一种,是一种非易失性存储器,在没有电流供应的条件下也能够长久地保存数据,其存储特性相当于硬盘,使得闪存介质110得以成为各类便携型数字设备的存储介质的基础。
主控制器120,包括数据转换器121、处理器122、缓存器123、闪存控制器124以及接口125。
数据转换器121,分别与处理器122和闪存控制器124连接,所述数据转换器121用于将二进制数据转换为十六进制数据,以及将十六进制数据转换为二进制数据。其中,所述数据转换器121可以包括二进制数据寄存器和十六进制数据寄存器。所述二进制数据寄存器可以用于保存由十六进制转换为二进制后的数据,所述十六进制数据寄存器可以用于保存由二进制转换为十六进制后的数据。
处理器122,分别与数据转换器121、缓存器123、闪存控制器124以及接口125连接,其中,处理器122与数据转换器121、缓存器123、闪存控制器124以及接口125可以通过总线或者其他方式连接,所述处理器用于运行存储在缓存器123中的非易失性软件程序、指令以及模块,从而实现本发明任一方法实施例。
缓存器123,主要用于缓存主机200发送的读/写指令以及根据主机200发送的读/写指令从闪存介质110获取的读数据或者写数据。缓存器123作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。缓存器123可以包括存储程序区,存储程序区可存储操作系统、至少一个功能所需要的应用程序。此外,缓存器123可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,缓存器123可选包括相对于处理器124远程设置的存储器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
闪存控制器124,与闪存介质110、数据转换器121、处理器122以及缓存器123连接,用于访问后端的闪存介质110,管理闪存介质110的各种参数和数据I/O;或者,用于提供访问的接口和协议,实现对应的SAS/SATA target协议端或者NVMe协议端,获取主机200发出的I/O指令并解码和生成内部私有数据结果等待执行;或者,用于负责FTL(Flashtranslation layer,闪存转换层)的核心处理。
接口125,连接主机200以及数据转换器121、处理器122以及缓存器123,用于接收主机200发送的数据,或者,接收所述处理器122发送的数据,实现主机200与处理器122之间的数据传输,所述接口125可以为SATA-2接口、SATA-3接口、SAS接口、MSATA接口、PCI-E接口、NGFF接口、CFast接口、SFF-8639接口和M.2NVME/SATA协议。
请参阅图2,图2是本发明实施例提供的关于闪存介质的逻辑布局示意图。由于所述存储介质是由FTL(闪存转换层)进行下发读、写和擦除的操作指令,所以根据所述闪存转换层,将所述存储介质进行抽象划分,其中,如图2所示,将所述存储介质横向划分为超闪存块sblk(Super Block)和闪存页page,纵向划分为存储介质die,LUN,CE,CH和plane,其中,CE指的是所述闪存控制器和所述存储介质的连接引脚具体的,所述CE为是能信号端。通过将所述闪存介质进行抽象划分,使得所述闪存介质中的所有通道能够并行执行命令,从而方便管控所述闪存介质的内部算法。
具体的,在所述纵向划分的底层有两个信号使能端(CE0和CE1),所述两个信号使能端分别连接两个通道(CH0和CH1),每个通道都对应一个存储介质die,四个存储介质die里面有一个LUN单元,每个存储介质die上包括两个闪存面plane。其中,每个通道上的所述存储介质die可以并行操作,并且,根据所述固态硬盘的容量和性能需求,可以决定所述通道上有多少个所述存储介质die,所述存储介质die的个数越多,并发的个数也就越多,所述固态硬盘的性能也就越好。在横向划分的情况下,所述闪存介质可以划分为若干个超闪存块sblk,每一个超闪存块sblk包括若干个闪存页page,其中,所述闪存介质的写和擦都是根据所述超闪存块sblk为操作单元进行处理的,所述闪存介质的读是通过单个闪存页page为最小单元进行处理的,其中,所述闪存页page的最小单元为4k,也即,所述每个闪存面plane的单元为16k。可选的,在所述抽象划分中,从所述纵向划分上来看,所述存储介质die包括若干个超闪存块sblk,从所述横向划分上来看,所述超闪存块sblk包括若干个存储介质die。
在本实施例中,所述存储介质的失效包括读报错,所述读包括物理位置读偏、数据读错和数据无法读出,写报错和擦报错。
请参阅图3,图3是本发明实施例提供的一种检查存储介质失效的方法的流程图,应用于如上所述的固态硬盘,所述方法包括:
S01、获取所述闪存介质的操作数据,并根据所述操作数据获取所述存储介质的错误计数信息。
具体的,所述闪存介质执行的命令包括读、写和擦,所述闪存介质的操作数据为对应的写操作数据、读操作数据和擦除操作数据;然后统计所述写操作数据对应的错误计数信息,所述读操作数据对应的错误计数信息,以及所述擦除操作数据对应的错误计数信息。
S02、根据所述错误计数信息检测是否触发对所述存储介质的失效诊断。
具体的,首先根据所述闪存介质的类型和容量设定所述读阈值、写阈值和擦阈值,然后将所述读阈值、所述写阈值和所述擦阈值与对应的读、写和擦的错误次数进行比较,请参阅图4,图4是本发明其中一实施例提供的触发失效诊断的流程图,如图4所示,当其中一个操作的错误次数大于对应的阈值,或者所有的操作的错误次数都大于对应的阈值时,则确认触发所述失效诊断。其中,可以是直接获取计数器记载的错误次数与所述对应的阈值进行比较,也可以是计数器记载的错误次数与权重的乘积和所述对应的阈值进行比较。
可选的,获取所述写操作数据对应的写权重、所述读操作数据对应的读权重以及所述擦除操作数据对应的擦权重;计算所述写操作数据对应的错误计数信息与所述写权重的第一乘积;计算所述读操作数据对应的错误计数信息与所述读权重的第二乘积;计算所述擦除操作数据对应的错误计数信息与所述擦权重的第三乘积;当所述第一乘积大于写阈值,和/或所述第二乘积大于读阈值,和/或所述第三乘积大于擦阈值时。
可选的,所述权重可以根据所述闪存介质的类型和容量设定来设置的(例如所述读阈值为1,写阈值为2,擦阈值为1),也可以根据单位时间内错误次数的技术增长速率来决定的,也即,首先统计所述写操作数据对应的错误计数信息、所述读操作数据对应的错误计数信息以及所述擦除操作数据对应的错误计数信息分别对应的单位时间内的计数增长速率,然后根据所述计数增长速率分别确定所述写操作数据对应的写权重、所述读操作数据对应的读权重以及所述擦除操作数据对应的擦权重,其中,可以是单位内技术增长率越大的权重越大,或者单位时间内增长率越大的权重越小。
S03、当确定对所述存储介质进行失效诊断时,对已经执行了写操作的所述闪存块执行读操作。
在一些实施例中,所述存储介质包括若干个闪存块,所述闪存块包括已经执行过写操作的闪存块和未执行过写操作的闪存块,在进行失效诊断时,对于所述未执行过写操作的闪存块可以选择跳过不进行失效诊断。
可选的,根据端口的带宽压力从已经执行了写操作的闪存块中确定执行读操作的闪存块的数量,并对所述确定的所述闪存块执行读操作。
其中,所述端口包括所述存储介质的IO接口,所述端口的压力越大,代表所述带宽被压满。在一些实施例中,所述IO接口的压力越大,所述读操作的个数越就越多。
S04、根据所述读操作的结果检查所述存储介质是否失效。
可选的,根据所述读操作的结果检查读的数据是否正确,以及位置是否读偏;当读的数据错误和/或读的位置读偏时,则记录并更新所述读操作对应的错误计数信息;当记录的所述读操作对应的错误计数信息大于第一设定阈值时,则记录并更新所述闪存块对应的错误计数信息;当记录的所述闪存块对应的错误计数信息大于第二设定阈值时,则确定所述存储介质失效。
具体的,由于所述读操作是以所述闪存块中的闪存页为最小操作单元,所以首先判断所述闪存块中的闪存页的错误次数是否超过预设第一阈值,其中,当所述读操作的数据读错和/或位置读错时,所述闪存页的错误次数增加,当所述闪存页的错误次数大于所述第一预设阈值时,则所述闪存块的错误次数增加,当所述闪存块的错误次数超过所述第二预设阈值时,则判定所述存储介质失效。
具体的,请参阅图5,图5是本实施例提供的一种闪存介质中的某一存储介质失效的示意图,如图5所示,所述read fail指的是读错误,program fail指的是写错误,erasefail指的是擦除失效,由图5可知,所述CE0端口的存储介质DIE1失效。
本发明实施例提供一种检查存储介质失效的方法,通过获取所述闪存介质的操作数据,并根据所述操作数据获取所述存储介质的错误计数信息,然后根据所述错误计数信息检测是否触发对所述存储介质的失效诊断,当确定对所述存储介质进行失效诊断时,从所述存储介质的若干闪存块中获取已经执行写操作的闪存块,并对已经执行了写操作的所述闪存块执行读操作,最后根据所述读操作的结果检查所述存储介质是否失效。本方法通过对已经执行过了写操作的闪存块进行诊断,实现了在不影响固态硬盘性能的条件下,对闪存介质中的存储介质进行失效诊断,并且,避免了由于检查存储介质失效不及时而导致的数据丢失,和/或出现宕机,从而提高了固态硬盘的稳定性。
请参阅图6,图6是本发明实施例提供的一种检查存储介质失效的装置的结构框图,如图6所示,所述检查存储介质失效的装置40包括获取模块41、触发模块42、执行模块43和判定模块44。
所述获取模块41用于获取所述闪存介质的操作数据,并根据所述操作数据获取所述存储介质的错误计数信息。
所述获取模块41包括第一获取单元411和统计单元412。
所述第一获取单元411用于获取所述闪存介质对应的写操作数据、读操作数据和擦除操作数据;
所述统计单元412用于统计所述写操作数据对应的错误计数信息,所述读操作数据对应的错误计数信息,以及所述擦除操作数据对应的错误计数信息。
所述触发模块42用于根据所述错误计数信息检查是否触发对所述存储介质的失效诊断。
所述触发单元42包括第二获取单元421、第一计算单元422、第二计算单元423、第三计算单元424和判定单元425。
所述第二获取单元421用于获取所述写操作数据对应的写权重、所述读操作数据对应的读权重以及所述擦除操作数据对应的擦权重;
所述第一计算单元422用于计算所述写操作数据对应的错误计数信息与所述写权重的第一乘积;
所述第二计算单元423用于计算所述读操作数据对应的错误计数信息与所述读权重的第二乘积;
所述第三计算单元424计算所述擦除操作数据对应的错误计数信息与所述擦权重的第三乘积;
所述判定单元425用于当所述第一乘积大于写阈值,和/或所述第二乘积大于读阈值,和/或所述第三乘积大于擦阈值时,则触发对所述存储介质的失效诊断。
所述执行模块43用于当确定对所述存储介质进行失效诊断时,对已经执行了写操作的所述闪存块执行读操作。
所述判定模块44用于根据所述读操作的结果检查所述存储介质是否失效。
需要说明的是,上述检查存储介质失效的装置可执行本发明实施例所提供的检查存储介质失效的方法,具备执行方法相应的功能模块和有益效果。未在检查存储介质失效的装置实施例中详尽描述的技术细节,可参见本发明实施例所提供的检查存储介质失效的方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种检查存储介质失效的方法,应用于固态硬盘,所述固态硬盘的存储介质包括若干个闪存块,其特征在于,所述方法包括:
获取所述闪存介质的操作数据,并根据所述操作数据获取所述存储介质的错误计数信息;
根据所述错误计数信息检测是否触发对所述存储介质的失效诊断;
当确定对所述存储介质进行失效诊断时,对已经执行了写操作的所述闪存块执行读操作;
根据所述读操作的结果检查所述存储介质是否失效。
2.根据权利要求1所述的方法,其特征在于,所述获取所述闪存介质的操作数据,并根据所述操作数据获取所述存储介质的错误计数信息,包括:
获取所述闪存介质对应的写操作数据、读操作数据和擦除操作数据;
统计所述写操作数据对应的错误计数信息,所述读操作数据对应的错误计数信息,以及所述擦除操作数据对应的错误计数信息。
3.根据权利要求2所述的方法,其特征在于,所述根据所述错误计数信息检测是否触发对所述存储介质的失效诊断,包括:
获取所述写操作数据对应的写权重、所述读操作数据对应的读权重以及所述擦除操作数据对应的擦权重;
计算所述写操作数据对应的错误计数信息与所述写权重的第一乘积;
计算所述读操作数据对应的错误计数信息与所述读权重的第二乘积;
计算所述擦除操作数据对应的错误计数信息与所述擦权重的第三乘积;
当所述第一乘积大于写阈值,和/或所述第二乘积大于读阈值,和/或所述第三乘积大于擦阈值时,则触发对所述存储介质的失效诊断。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
统计所述写操作数据对应的错误计数信息、所述读操作数据对应的错误计数信息以及所述擦除操作数据对应的错误计数信息分别对应的单位时间内的计数增长速率;
根据所述计数增长速率分别确定所述写操作数据对应的写权重、所述读操作数据对应的读权重以及所述擦除操作数据对应的擦权重。
5.根据权利要求1至4任一项所述的方法,,其特征在于,所述对已经执行了写操作的所述闪存块执行读操作,具体包括:
根据端口的带宽压力从已经执行了写操作的闪存块中确定执行读操作的闪存块的数量,并对所述确定的所述闪存块执行读操作。
6.根据权利要求5所述的方法,其特征在于,所述根据所述读操作的结果检查所述存储介质是否失效,包括:
根据所述读操作的结果检查读的数据是否正确,以及位置是否读偏;
当读的数据错误和/或读的位置读偏时,则记录并更新所述读操作对应的错误计数信息;
当记录的所述读操作对应的错误计数信息大于第一设定阈值时,则记录并更新所述闪存块对应的错误计数信息;
当记录的所述闪存块对应的错误计数信息大于第二设定阈值时,则确定所述存储介质失效。
7.一种检查存储介质失效的装置,应用于固态硬盘,所述固态硬盘的存储介质包括若干个闪存块,其特征在于,所述装置包括:
获取模块,用于获取所述闪存介质的操作数据,并根据所述操作数据获取所述存储介质的错误计数信息;
触发模块,用于根据所述错误计数信息检测是否触发对所述存储介质的失效诊断;
执行模块,用于当确定对所述存储介质进行失效诊断时,对已经执行了写操作的所述闪存块执行读操作;
判定模块,用于根据所述读操作的结果检查所述存储介质是否失效。
8.根据权利要求7所述的装置,其特征在于,所述第一获取模块包括:
第一获取单元,用于获取所述闪存介质对应的写操作数据、读操作数据和擦除操作数据;
统计单元,用于统计所述写操作数据对应的错误计数信息,所述读操作数据对应的错误计数信息,以及所述擦除操作数据对应的错误计数信息。
9.根据权利要求8所述的方法,其特征在于,所述触发模块包括:
第二获取单元,用于获取所述写操作数据对应的写权重、所述读操作数据对应的读权重以及所述擦除操作数据对应的擦权重;
第一计算单元,用于计算所述写操作数据对应的错误计数信息与所述写权重的第一乘积;
第二计算单元,用于计算所述读操作数据对应的错误计数信息与所述读权重的第二乘积;
第三计算单元,计算所述擦除操作数据对应的错误计数信息与所述擦权重的第三乘积;
判定单元,用于当所述第一乘积大于写阈值,和/或所述第二乘积大于读阈值,和/或所述第三乘积大于擦阈值时,则触发对所述存储介质的失效诊断。
10.一种固态硬盘,其特征在于,包括:
闪存介质;以及,
主控制器,与所述闪存介质连接;
其中,所述主控制器包括:
至少一个处理器;以及
缓存器,与所述至少一个处理器连接;其中,
所述缓存器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6任一项所述的检查存储介质失效的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111626136.XA CN114300032A (zh) | 2021-12-28 | 2021-12-28 | 一种检查存储介质失效的方法、装置和固态硬盘 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111626136.XA CN114300032A (zh) | 2021-12-28 | 2021-12-28 | 一种检查存储介质失效的方法、装置和固态硬盘 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114300032A true CN114300032A (zh) | 2022-04-08 |
Family
ID=80972030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111626136.XA Pending CN114300032A (zh) | 2021-12-28 | 2021-12-28 | 一种检查存储介质失效的方法、装置和固态硬盘 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114300032A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115470052A (zh) * | 2022-07-04 | 2022-12-13 | 上海江波龙数字技术有限公司 | 存储芯片的坏块检测方法、检测装置及存储介质 |
WO2023087624A1 (zh) * | 2021-11-17 | 2023-05-25 | 苏州浪潮智能科技有限公司 | 固态硬盘的数据巡检方法、装置、计算机设备及存储介质 |
CN116302633A (zh) * | 2023-01-18 | 2023-06-23 | 北京得瑞领新科技有限公司 | 闪存存储器的逻辑单元失效管理方法、装置、介质及设备 |
-
2021
- 2021-12-28 CN CN202111626136.XA patent/CN114300032A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023087624A1 (zh) * | 2021-11-17 | 2023-05-25 | 苏州浪潮智能科技有限公司 | 固态硬盘的数据巡检方法、装置、计算机设备及存储介质 |
CN115470052A (zh) * | 2022-07-04 | 2022-12-13 | 上海江波龙数字技术有限公司 | 存储芯片的坏块检测方法、检测装置及存储介质 |
CN115470052B (zh) * | 2022-07-04 | 2023-11-10 | 上海江波龙数字技术有限公司 | 存储芯片的坏块检测方法、检测装置及存储介质 |
CN116302633A (zh) * | 2023-01-18 | 2023-06-23 | 北京得瑞领新科技有限公司 | 闪存存储器的逻辑单元失效管理方法、装置、介质及设备 |
CN116302633B (zh) * | 2023-01-18 | 2024-04-09 | 北京得瑞领新科技有限公司 | 闪存存储器的逻辑单元失效管理方法、装置、介质及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11216362B2 (en) | Data storage device and operating method thereof | |
US11243709B2 (en) | Data storage apparatus and operating method thereof | |
KR101573591B1 (ko) | 메모리 시스템 제어기를 구비하는 장치 및 관련 방법 | |
US11249897B2 (en) | Data storage device and operating method thereof | |
CN114300032A (zh) | 一种检查存储介质失效的方法、装置和固态硬盘 | |
KR20200095103A (ko) | 데이터 저장 장치 및 그 동작 방법 | |
US11853599B2 (en) | Memory system and information processing system | |
US20150331625A1 (en) | Memory system and method of controlling memory system | |
KR20200025184A (ko) | 불휘발성 메모리 장치, 이를 포함하는 데이터 저장 장치 및 그 동작 방법 | |
KR20090006920A (ko) | 캐시 메모리 장치 및 캐시 메모리 장치의 데이터 처리 방법 | |
US11526439B2 (en) | Storage device and operating method thereof | |
US11481153B2 (en) | Data storage device and operating method thereof | |
KR20200121645A (ko) | 컨트롤러 및 그것의 동작 방법과 메모리 시스템 | |
US11461238B2 (en) | Storage device, memory controller, and method for fetching write commands from submission queues to perform full page writes | |
US20230266884A1 (en) | Operating method for storage controller and storage system including same | |
CN114281265B (zh) | 一种存储介质失效的处理方法、装置和固态硬盘 | |
US10719382B2 (en) | Collecting state records of cores in a data storage device | |
KR101070511B1 (ko) | Ssd 컨트롤러 및 ssd 컨트롤러의 동작 방법 | |
KR102645786B1 (ko) | 컨트롤러, 메모리 시스템 및 그것의 동작 방법 | |
KR20210156090A (ko) | 저장 장치 및 그 동작 방법 | |
KR20210156010A (ko) | 저장 장치 및 그 동작 방법 | |
US20210042232A1 (en) | Controller, operating method thereof and storage device including the same | |
US11409473B2 (en) | Data storage device and operating method thereof | |
US20210397558A1 (en) | Storage device and operating method thereof | |
KR20230037255A (ko) | 이벤트 로그 관리 방법, 컨트롤러 및 저장 장치 |
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 |