CN117497035A - 一种基于固态硬盘的损坏测试方法、装置及电子设备 - Google Patents
一种基于固态硬盘的损坏测试方法、装置及电子设备 Download PDFInfo
- Publication number
- CN117497035A CN117497035A CN202311488702.4A CN202311488702A CN117497035A CN 117497035 A CN117497035 A CN 117497035A CN 202311488702 A CN202311488702 A CN 202311488702A CN 117497035 A CN117497035 A CN 117497035A
- Authority
- CN
- China
- Prior art keywords
- flash memory
- data
- damaged
- solid state
- state disk
- 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
- 239000007787 solid Substances 0.000 title claims abstract description 201
- 238000012360 testing method Methods 0.000 title claims abstract description 129
- 238000000034 method Methods 0.000 claims abstract description 85
- 230000008569 process Effects 0.000 claims abstract description 43
- 238000003860 storage Methods 0.000 claims abstract description 16
- 230000008859 change Effects 0.000 claims description 44
- 238000013507 mapping Methods 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 230000002950 deficient Effects 0.000 claims description 12
- 238000001514 detection method Methods 0.000 abstract description 7
- 238000010998 test method Methods 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 238000009826 distribution Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 239000000306 component Substances 0.000 description 3
- 239000008358 core component Substances 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 230000032683 aging Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 230000035939 shock Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/56—External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- 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]
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本申请提供一种基于固态硬盘的损坏测试方法、装置及电子设备,涉及存储检测的技术领域,方法包括:获取固态硬盘的各个闪存块对应的物理块地址;根据各个物理块地址,生成对应的第一数据;在第一时刻,将各个第一数据,写入对应的闪存块;对固态硬盘进行第一时长的预设测试后,在第二时刻,根据各个物理块地址,读取出各个闪存块的第二数据,第二时刻与第一时刻间隔第一时长;判断第二数据与第一数据是否相同,若第二数据与第一数据不同,确定多个闪存块中第二数据对应的闪存块为损坏闪存块。本申请能够在对固态硬盘进行测试的过程中,确定损坏闪存块的具体位置。
Description
技术领域
本申请涉及存储检测的技术领域,具体涉及一种基于固态硬盘的损坏测试方法、装置及电子设备。
背景技术
固态硬盘(Solid State Disk,SSD)是一种用固态电子存储芯片阵列制成的硬盘,主要由主控单元和存储阵列组成。它没有机械运动部件,因此具有更高的读取速度、更低的功耗、更强的抗震性能和更低的噪音等优点。相比传统的机械硬盘,固态硬盘的数据传输速度更快,启动系统和应用程序也更快,因此能够提高整体的系统性能。
固态硬盘的闪存块是存储数据的主要单元,也是固态硬盘的核心部件之一。闪存块是一种非易失性存储器,即掉电后数据也不会丢失。每个闪存块都是由一个浮栅极的MOS管存储单一位元数据,通过控制极加电压来控制数据的写入和擦除。在固态硬盘中,闪存块按照特定的组织结构排布,每个区块中包含一定数量的闪存块,根据需要担负不同的任务,例如数据读写、垃圾回收以及磨损均衡等。闪存块的可靠性直接影响了固态硬盘的性能和寿命。
进一步地,在实际的应用过程中,固态硬盘的工作环境温度会发生变化,而温度的变化可能导致固态硬盘的闪存块发生损坏。而固态硬盘的闪存块如果发生损坏,很难对其进行修复,从而导致损坏闪存块的数据丢失。因此需要根据固态硬盘闪存块在高温环境下的损坏变化情况,预测可能发生损坏的闪存块。从而提前将可能发生损坏的闪存块的数据进行备份,防止数据丢失。
目前在做固态硬盘在高温环境下的损坏测试时,通常会采用自我监测、分析和报告技术(Self-Monitoring Analysis and Reporting Technology,SMART)来对固态硬盘的闪存颗粒磨损度、损坏闪存块数量等进行监测,及时分析并预报硬盘可能发生的问题。但是通过这一测试方法中获取的对于闪存块的损坏情况较为单一,无法确定损坏闪存块的具体位置,进而难以确定损坏闪存块的变化情况,无法对闪存块的损坏变化情况进行预测。因此需要一种方法能够在对固态硬盘进行测试的过程中,确定损坏闪存块的具体位置。
发明内容
本申请提供一种基于固态硬盘的损坏测试方法、装置及电子设备,能够在对固态硬盘进行测试的过程中,确定损坏闪存块的具体位置。
在本申请的第一方面提供了一种基于固态硬盘的损坏测试方法,所述方法包括:
获取固态硬盘的各个闪存块对应的物理块地址;
根据各个所述物理块地址,生成对应的第一数据;
在第一时刻,将各个所述第一数据,写入对应的所述闪存块;
对所述固态硬盘进行第一时长的预设测试后,在第二时刻,根据各个所述物理块地址,读取出各个所述闪存块的第二数据,所述第二时刻与所述第一时刻间隔所述第一时长;
判断所述第二数据与所述第一数据是否相同,若所述第二数据与所述第一数据不同,确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块。
通过采用上述技术方案,在对固态硬盘进行损坏测试前,获取固态硬盘的各个闪存块对应的物理块地址,从而能够确定各个闪存块的分布情况。并根据物理块地址,生成对应的第一数据,由于在固态硬盘中物理块地址是独一无二的,因此不会存在两个相同的第一数据。在测试前再将第一数据写入对应的闪存块,并对固态硬盘进行测试。测试后读取出各个闪存块的第二数据,如果第二数据与第一数据不同,表明该闪存块可能发生损坏,为损坏闪存块。而根据第一数据的唯一性,可以通过与第二数据不同的第一数据,找出该第一数据对应的物理块地址,最后能够根据物理块地址,确定损坏闪存块在固态硬盘中的实际位置。
可选的,所述根据所述物理块地址,生成对应的第一数据,具体包括:
获取所述固态硬盘的多个闪存块的总数量;
建立各个所述物理块地址与块标记的映射关系,所述块标记的数值小于或等于所述总数量,且所述块标记的数值为正整数;
对各个所述块标记进行二进制转换,得到各个所述物理块地址对应的所述第一数据。
通过采用上述技术方案,由于物理块地址通常较长,如果直接将物理块地址转换成第一数据,会导致第一数据的长度较长,从而增加了数据写入的时长。而将物理块与块标记建立映射关系,并且块标记的数值小于闪存块的总数,块标记的数据长度会远远小于物理块数据的长度,从而转换成二进制的第一数据的长度也会较小,能够极大的降低写入数据的时长。并且本质上第一数据还是与物理块地址一一对应,能够保证第一数据的唯一性,以确保后续检测结果判断的准确性。
可选的,所述对所述固态硬盘进行第一时长的预设测试,具体包括:
确定所述固态硬盘的已损坏闪存块的第一数量;
控制所述固态硬盘的环境温度为第一温度,并使所述环境温度处于所述第一温度的时长为所述第一时长;
在所述第一时长内,实时获取所述固态硬盘的损坏闪存块的数量,判断所述损坏闪存块的数量是否大于所述第一数量,若所述损坏闪存块的数量大于所述第一数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据。
通过采用上述技术方案,在对固态硬盘进行第一温度的测试时,实时获取固态硬盘损坏闪存块的数量。由于在对固态硬盘进行测试之前,已经获取固态硬盘已损坏闪存块的第一数量。因此可以比对损坏闪存块的数量是否大于第一数量,进而判断是否有新增损坏闪存块。在有新增损坏闪存块的前提下,再读取各个闪存块的第二数据,并用于后续判断是否与第一数据相同,从而确定闪送块是否损坏。进而在测试过程,不用实时读取每一个闪存块的数据,极大的提高了测试的效率。
可选的,所述确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块之后,所述方法还包括:
确定所述损坏闪存块的第二数据对应的第一数据;
对所述损坏闪存块的第一数据进行十进制转换,得的所述损坏闪存块的块标记;
根据所述映射关系,确定所述损坏闪存块的块标记对应的物理块地址,得的所述损坏闪存块的物理块地址。
通过采用上述技术方案,通过确定损坏闪存块的第二数据对应的第一数据,然后将第一数据转换为块标记,最后利用映射关系,将块标记映射回物理块地址,从而能够精准确定损坏闪存块的物理块地址。实现了精确定位损坏闪存块在固态硬盘中的实际且具体的位置。
可选的,所述若所述损坏闪存块的数量大于所述第一数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据之后,所述方法还包括:
确定所述固态硬盘的已损坏闪存块的第二数量;
控制所述固态硬盘的环境温度为第二温度,并使所述环境温度处于所述第二温度的时长为第二时长,所述第二温度大于所述第一温度,所述第二时长与所述第一时长不同;
在所述第二时长内,实时获取所述固态硬盘的损坏闪存块的数量,判断所述损坏闪存坏的数量是否大于所述第二数量,若所述损坏闪存块的数量大于所述第二数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据。
通过采用上述技术方案,由于固态硬盘在实际的工作过程中,固态硬盘所处的环境温度会发生变化,其中包括环境温度升高。因此需要对固态硬盘进行不同梯度温度的损坏测试,将固态硬盘所处的环境温度设为与第一温度不同的第二温度。并确定在第二温度情况下,固态硬盘的损坏闪存块的变化情况,能够使测试更加全面可靠。
可选的,所述若所述第二数据与所述第一数据不同,确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块之后,所述方法还包括:
在对所述固态硬盘进行多次测试过程中,确定每次测试过程中所述损坏闪存块的数量数据以及位置数据;
基于多个所述数量数据以及多个所述位置数据,确定所述损坏闪存块的变化方向;
对损坏闪存块的变化情况进行预测,确定预测损坏闪存块,所述预测损坏闪存块位于所述变化方向上,所述预测损坏闪存块且与所述损坏闪存块相邻;
在对固态硬盘进行后续测试过程中,判断所述预测损坏闪存块是否损坏,若确定所述预测损坏闪存块损坏,则确定所述预测的结果正确。
通过采用上述技术方案,根据多次测试过程中损坏闪存块的数量变化以及位置变化,对可能发生损坏的预测损坏闪存块进行预测。并且在进行后续的测试过程,通过判断预测损坏闪存块是否发生损坏,确定预测结果是否正确。在预测结果正确的情况下,可以将预测方法应用于固态硬盘的实际应用过程,预测可能发生损坏的闪存块,并将可能发生损坏的闪存块内部的数据进行提前备份或者转移,降低数据损失的可能性。
可选的,所述判断所述第二数据与所述第一数据是否相同,具体包括:
判断各个所述闪存块中是否能够读取出数据,若多个所述闪存块中,存在未能读出数据的闪存块,则确定所述未能读出数据的闪存块中的第二数据与所述第一数据不同;
若多个所述闪存块中,不存在未能读出数据的闪存块,则确定各个所述闪存块的第二数据与所述第一数据的差值;
判断所述差值是否为零,从而确定所述第二数据与第一数据所述是否相同。
通过采用上述技术方案,通过判断闪存块中是否能够读取出数据,以及判断第二数据与第一数据的差值是否为零,然后全面确定第二数据与第一数据是否相同。从而用于后续判断该闪存块是否发生损坏,而导致内部存储的数据发生变化,提高了测试的准确度。
在本申请的第二方面提供了一种基于固态硬盘的损坏测试装置,包括获取模块、生成模块、读写模块以及判断模块,其中:
所述获取模块,用于获取固态硬盘的各个闪存块对应的物理块地址;
所述生成模块,用于根据各个所述物理块地址,生成对应的第一数据;
所述读写模块,用于在第一时刻,将各个所述第一数据,写入对应的所述闪存块;
所述读写模块,用于对所述固态硬盘进行第一时长的预设测试后,在第二时刻,根据各个所述物理块地址,读取出各个所述闪存块的第二数据,所述第二时刻与所述第一时刻间隔所述第一时长;
所述判断模块,用于判断所述第二数据与所述第一数据是否相同,若所述第二数据与所述第一数据不同,确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块。
可选的,所述获取模块,用于获取所述固态硬盘的多个闪存块的总数量;
所述生成模块,用于建立各个所述物理块地址与块标记的映射关系,所述块标记的数值小于或等于所述总数量,且所述块标记的数值为正整数;
所述生成模块,用于对各个所述块标记进行二进制转换,得到各个所述物理块地址对应的所述第一数据。
可选的,所述获取模块,用于确定所述固态硬盘的已损坏闪存块的第一数量;
所述判断模块,用于控制所述固态硬盘的环境温度为第一温度,并使所述环境温度处于所述第一温度的时长为所述第一时长;
所述获取模块,用于在所述第一时长内,实时获取所述固态硬盘的损坏闪存块的数量,判断所述损坏闪存块的数量是否大于所述第一数量,若所述损坏闪存块的数量大于所述第一数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据。
可选的,所述获取模块,用于确定所述损坏闪存块的第二数据对应的第一数据;
所述生成模块,用于对所述损坏闪存块的第一数据进行十进制转换,得的所述损坏闪存块的块标记;
所述生成模块,用于根据所述映射关系,确定所述损坏闪存块的块标记对应的物理块地址,得的所述损坏闪存块的物理块地址。
可选的,所述获取模块,用于确定所述固态硬盘的已损坏闪存块的第二数量;
所述判断模块,用于控制所述固态硬盘的环境温度为第二温度,并使所述环境温度处于所述第二温度的时长为第二时长,所述第二温度大于所述第一温度,所述第二时长与所述第一时长不同;
所述获取模块,用于在所述第二时长内,实时获取所述固态硬盘的损坏闪存块的数量,判断所述损坏闪存坏的数量是否大于所述第二数量,若所述损坏闪存块的数量大于所述第二数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据。
可选的,所述获取模块,用于在对所述固态硬盘进行多次测试过程中,确定每次测试过程中所述损坏闪存块的数量数据以及位置数据;
所述生成模块,用于基于多个所述数量数据以及多个所述位置数据,确定所述损坏闪存块的变化方向;
所述生成模块,用于对损坏闪存块的变化情况进行预测,确定预测损坏闪存块,所述预测损坏闪存块位于所述变化方向上,所述预测损坏闪存块且与所述损坏闪存块相邻;
所述判断模块,用于在对固态硬盘进行后续测试过程中,判断所述预测损坏闪存块是否损坏,若确定所述预测损坏闪存块损坏,则确定所述预测的结果正确。
可选的,所述判断模块,用于判断各个所述闪存块中是否能够读取出数据,若多个所述闪存块中,存在未能读出数据的闪存块,则确定所述未能读出数据的闪存块中的第二数据与所述第一数据不同;
所述生成模块,用于若多个所述闪存块中,不存在未能读出数据的闪存块,则确定各个所述闪存块的第二数据与所述第一数据的差值;
所述判断模块,用于判断所述差值是否为零,从而确定所述第二数据与第一数据所述是否相同。
在本申请的第三方面提供了一种电子设备,包括处理器、存储器、用户接口以及网络接口,所述存储器用于存储指令,所述用户接口和所述网络接口均用于与其他设备通信,所述处理器用于执行所述存储器中存储的指令,以使所述电子设备执行如上述任意一项所述的方法。
在本申请的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有指令,当所述指令被执行时,执行如上述任意一项所述的方法。
综上所述,本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
1.在对固态硬盘进行损坏测试前,获取固态硬盘的各个闪存块对应的物理块地址,从而能够确定各个闪存块的分布情况。并根据物理块地址,生成对应的第一数据,由于在固态硬盘中物理块地址是独一无二的,因此不会存在两个相同的第一数据。在测试前再将第一数据写入对应的闪存块,并对固态硬盘进行测试。测试后读取出各个闪存块的第二数据,如果第二数据与第一数据不同,表明该闪存块可能发生损坏,为损坏闪存块。而根据第一数据的唯一性,可以通过与第二数据不同的第一数据,找出该第一数据对应的物理块地址,最后能够根据物理块地址,确定损坏闪存块在固态硬盘中的实际位置。
2.由于物理块地址通常较长,如果直接将物理块地址转换成第一数据,会导致第一数据的长度较长,从而增加了数据写入的时长。而将物理块与块标记建立映射关系,并且块标记的数值小于闪存块的总数,块标记的数据长度会远远小于物理块数据的长度,从而转换成二进制的第一数据的长度也会较小,能够极大的降低写入数据的时长。并且本质上第一数据还是与物理块地址一一对应,能够保证第一数据的唯一性,以确保后续检测结果判断的准确性。
3.在对固态硬盘进行第一温度的测试时,实时获取固态硬盘损坏闪存块的数量。由于在对固态硬盘进行测试之前,已经获取固态硬盘已损坏闪存块的第一数量。因此可以比对损坏闪存块的数量是否大于第一数量,进而判断是否有新增损坏闪存块。在有新增损坏闪存块的前提下,再读取各个闪存块的第二数据,并用于后续判断是否与第一数据相同,从而确定闪送块是否损坏。进而在测试过程,不用实时读取每一个闪存块的数据,极大的提高了测试的效率。
4.根据多次测试过程中损坏闪存块的数量变化以及位置变化,对可能发生损坏的预测损坏闪存块进行预测。并且在进行后续的测试过程,通过判断预测损坏闪存块是否发生损坏,确定预测结果是否正确。在预测结果正确的情况下,可以将预测方法应用于固态硬盘的实际应用过程,预测可能发生损坏的闪存块,并将可能发生损坏的闪存块内部的数据进行提前备份或者转移,降低数据损失的可能性。
附图说明
图1是本申请实施例公开的一种基于固态硬盘的损坏测试方法的流程示意图;
图2是本申请实施例公开的一种测试温度以及测试时长的设定变化的示意图;
图3是本申请实施例公开的一种损坏闪存块的变化方向的示意图;
图4是本申请实施例公开的一种进行第一次测试损坏闪存块的分布示意图;
图5是本申请实施例公开的一种进行第一次测试后新增损坏闪存块的分布示意图;
图6是本申请实施例公开的一种进行第二次测试后新增损坏闪存块的分布示意图;
图7是本申请实施例公开的一种预测损坏闪存块的分布示意图;
图8是本申请实施例公开的一种基于固态硬盘的损坏测试装置的结构示意图;
图9是本申请实施例公开的一种电子设备的结构示意图。
附图标记说明:801、获取模块;802、生成模块;803、读写模块;804、判断模块;901、处理器;902、通信总线;903、用户接口;904、网络接口;905、存储器。
具体实施方式
为了使本领域的技术人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。
在本申请实施例的描述中,“例如”或者“举例来说”等词用于表示作例子、例证或说明。本申请实施例中被描述为“例如”或者“举例来说”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“例如”或者“举例来说”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,术语“多个”的含义是指两个或两个以上。例如,多个系统是指两个或两个以上的系统,多个屏幕终端是指两个或两个以上的屏幕终端。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
固态硬盘(Solid State Disk,SSD)是一种用固态电子存储芯片阵列制成的硬盘,主要由主控单元和存储阵列组成。它没有机械运动部件,因此具有更高的读取速度、更低的功耗、更强的抗震性能和更低的噪音等优点。相比传统的机械硬盘,固态硬盘的数据传输速度更快,启动系统和应用程序也更快,因此能够提高整体的系统性能。
固态硬盘的闪存块是存储数据的主要单元,也是固态硬盘的核心部件之一。闪存块是一种非易失性存储器,即掉电后数据也不会丢失。每个闪存块都是由一个浮栅极的MOS管存储单一位元数据,通过控制极加电压来控制数据的写入和擦除。在固态硬盘中,闪存块按照特定的组织结构排布,每个区块中包含一定数量的闪存块,根据需要担负不同的任务,例如数据读写、垃圾回收以及磨损均衡等。闪存块的可靠性直接影响了固态硬盘的性能和寿命。
为了评估固态硬盘在高温环境下的性能和稳定性,需要将固态硬盘放在不同温度下进行损坏测试。高温环境可能导致电子元件的加速老化,其可能影响固态硬盘的性能和稳定性。通过高温损坏测试,模拟和评估不同固态硬盘在高温环境下可能的表现,以及是否会加速老化或出现损坏,从而为固态硬盘的优化和改进提供参考。
进一步地,在实际的应用过程中,固态硬盘的工作环境温度会发生变化,而温度的变化可能导致固态硬盘的闪存块发生损坏。而固态硬盘的闪存块如果发生损坏,很难对其进行修复,从而导致损坏闪存块的数据丢失。因此需要根据固态硬盘闪存块在高温环境下的损坏变化情况,预测可能发生损坏的闪存块。从而提前将可能发生损坏的闪存块的数据进行备份,防止数据丢失。
目前在做固态硬盘在高温环境下的损坏测试时,通常会采用自我监测、分析和报告技术(Self-Monitoring Analysis and Reporting Technology,SMART)来对固态硬盘的闪存颗粒磨损度、损坏闪存块数量等进行监测,及时分析并预报硬盘可能发生的问题。但是通过这一测试方法中获取的对于闪存块的损坏情况较为单一,无法确定损坏闪存块的具体位置,进而难以确定损坏闪存块的变化情况,无法对闪存块的损坏变化情况进行预测。因此需要一种方法能够在对固态硬盘进行测试的过程中,确定损坏闪存块的具体位置。
本实施例公开了一种基于固态硬盘的损坏测试方法,参照图1,包括如下步骤:
S110,获取固态硬盘的各个闪存块对应的物理块地址。
本申请实施例公开的一种基于固态硬盘的损坏测试方法应用于固态硬盘的测试装置,测试装置包括高温箱、控温系统、数据读写系统以及中央控制系统等。由于相关测试装置为相关技术领域的常规技术手段,在此不再做进一步赘述,后面会根据具体步骤,描述本申请实施例中提供的固态硬盘测试装置与常规测试装置的区别。需要说明的是,执行本申请实施例提供的一种基于固态硬盘的测试方法为除固态硬盘生产制造商外的第三方,受制于读取权限的管理,第三方无法直接确定固态硬盘上已损坏闪存块的具体位置,需要通过本申请实施例提供的一种基于固态硬盘的测试方法来完成固态硬盘的测试。
固态硬盘的闪存块是存储数据的主要单元,也是固态硬盘的核心部件之一。闪存块是一种非易失性存储器,即掉电后数据也不会丢失。每个闪存块都是由一个浮栅极的MOS管存储单一位元数据,通过控制极加电压来控制数据的写入和擦除。在固态硬盘中,闪存块按照特定的组织结构排布,每个区块中包含一定数量的闪存块,根据需要担负不同的任务,例如数据读写、垃圾回收以及磨损均衡等。闪存块的可靠性直接影响了固态硬盘的性能和寿命。
对于固态硬盘的任意一个闪存块,其对应有一个逻辑块地址(Logical BlockAddress,LBA)与物理块地址。其中,逻辑块地址是一种抽象的存储单元,通常用于计算机操作系统和应用程序与存储设备进行通信。它类似于传统硬盘上的扇区号,用于标识和引用存储设备上的数据块。并且逻辑块地址是用户可见的、逻辑层面的地址,不直接关联到存储设备的物理结构。而物理块地址是存储设备内部的实际物理地址,它与存储设备的硬件结构和闪存芯片的排列有关。存储设备的控制器和固件使用物理块地址来管理和定位数据的存储位置。物理块地址通常对于普通用户和操作系统是不可见的,用于控制器和固件管理存储设备的数据存储和擦除。
因此为了确定坏块的实际位置,需要读取的是固态硬盘的物理块地址。可以通过硬盘制造商提供的专业硬盘管理工具,或者一些其他的采用专业数据恢复程序,可以提供对存储设备的低级访问,并可以允许查看固态硬盘的物理块地址。因此固态硬盘测试装置的中央控制系统需要安装上述硬盘制造商提供的专业硬盘管理工具,或者专业数据恢复程序,以实现本申请提供的方法。
在固态硬盘中,闪存块的物理块地址的表达方式通常以[Bank | Row | Column]的形式进行表达。其中,Bank表示闪存块所在的Bank(通常一个Bank包含多个闪存块),Row表示闪存块在所在Bank中的行号,Column表示闪存块在所在Bank中的列号。具体来说,固态硬盘的控制器首先通过读取闪存块的序列号来确定其所在的Bank和Row,然后再通过读取闪存块的地址寄存器来确定其所在的Column。这些信息共同构成了闪存块的物理块地址。需要注意的是,不同的固态硬盘和控制器可能采用不同的地址映射方法和寄存器设计,因此闪存块的物理块地址的表达方式可能会有所不同。但是对于任意一个固态硬盘,其不同的闪存块有着不同的物理块地址。
S120,根据各个物理块地址,生成对应的第一数据。
第一数据除了需要做物理块地址的唯一标记,还需要用于写入固态硬盘,因此根据任意一个物理块生成的第一数据除了需要保证其唯一性,还需要保证结果是二进制数据,便于后续直接写入固态硬盘。
由于物理块地址偏长,例如在上述[Bank | Row | Column]的闪存块物理块地址表达形式中,物理块地址可能为[256 | 35 | 42],将2563542转换成二进制的数据为1001110001110111010110。因此为了减少计算量以及后续转换成第一数据的长度,需要进行进一步的转换。首先固态硬盘的闪存块的总数量,总数量得到多个块标记,块标记的数值为正整数,且块标记的数值小于或等于总数量。举例来说,若闪存块的总数量为1万,则块标记为从0~1万的正整数。再对快标记进行二进制转换,将十进制的块标记数值,转换成二进制的第一数据,得到各个物理块地址对应的第一数据,并建立各个物理块地址与第一数据的映射关系。
由于物理块地址通常较长,如果直接将物理块地址转换成第一数据,会导致第一数据的长度较长,从而增加了数据写入的时长。而将物理块与块标记建立映射关系,并且块标记的数值小于闪存块的总数,块标记的数据长度会远远小于物理块数据的长度,从而转换成二进制的第一数据的长度也会较小,能够极大的降低写入数据的时长。并且本质上第一数据还是与物理块地址一一对应,能够保证第一数据的唯一性,以确保后续检测结果判断的准确性。
S130,在第一时刻,将各个第一数据,写入对应的闪存块。
随后需要对固态硬盘进行高温测试,需要将固态硬盘安装在测试平台上放入高温箱中,对固态硬盘施加不同的温度,通过测试温度范围在60°C到85°C之间,不同实施例中对测试温度的范围也可以自由设计。将固态硬盘放入高温箱后,在施加高温之前,需要通过测试平台将第一数据写入对应的闪存块,由于每个闪存块有对应的物理块地址,根据每个物理块地址又生成了对应的第一数据,因此可以根据物理块地址,将闪存块与第一数据对应。
对于一块固态硬盘,在其生产出来时,因为制造工艺问题就有可能存在已损坏闪存块,即坏块。少量的坏块并不会影响固态硬盘的使用,但是在固态硬盘正式进入检测阶段之前,需要首先确定出坏块的数量,标记为第一数量。并找出各个已损坏闪存块的具体位置,找出其对应的物理块地址。
S140,对固态硬盘进行第一时长的预设测试后,在第二时刻,根据各个物理块地址,读取出各个闪存块的第二数据。
对固态硬盘进行高温测试,控制固态硬盘的环境温度为第一温度,第一温度根据测试温度范围确定,为测试温度范围内较低的温度。例如温度范围为60℃到85℃,第一温度应该高于60℃,且接近60℃。并控制固态硬盘处于第一温度的时长为第一时长,不同实施例中第一时长的具体时长可根据实际情况调整。
在第一时长的测试阶段内,通过自动检测分析及报告技术(Self-MonitoringAnalysis and Report Technology,简称S.M.A.R.T)实时获取固态硬盘的损坏闪存块的,损坏闪存块为固态硬盘的多个闪存块中进行高温测试时损坏的闪存块。S.M.A.R.T可以在硬盘发生故障之前发现可能存在的问题,以便及时采取措施,避免数据丢失。具体来说S.M.A.R.T允许硬盘实时监测多个关键参数,这些参数反映了硬盘的性能和状态。这些参数可以包括温度、坏块数量、重新映射块数量、旋转延迟、寻道时间等等。
根据获取的固态硬盘的损坏闪存块的数量,判断损坏闪存块的数量是否大于第一数量,相当于判断损坏闪存块的数量是否相对于测试之前的数量有所增加,因为在进行测试之前,固态硬盘的已损坏闪存块的数量为第一数量,如果损坏闪存块的数量大于第一数量,表明在测试过程中有新的损坏闪存块增加。
若损坏闪存块的数量大于第一数量,则在第二时刻根据各个物理块地址,通过测试平台读取各个闪存块的第二数据,其中第二时刻与第一时刻间隔第一时长。前面提到,由于物理块地址对于普通用户来说是不可见的,因此要根据物理块地址去读取对应的闪存块的第二数据,需要采用中央控制系统安装的硬盘制造商提供的专业硬盘管理工具,或者专业数据恢复程序来实现。
在对固态硬盘进行第一温度的测试时,实时获取固态硬盘损坏闪存块的数量。由于在对固态硬盘进行测试之前,已经获取固态硬盘已损坏闪存块的第一数量。因此可以比对损坏闪存块的数量是否大于第一数量,进而判断是否有新增损坏闪存块。在有新增损坏闪存块的前提下,再读取各个闪存块的第二数据,并用于后续判断是否与第一数据相同,从而确定闪送块是否损坏。进而在测试过程,不用实时读取每一个闪存块的数据,极大的提高了测试的效率。
S150,判断第二数据与第一数据是否相同,若第二数据与第一数据不同,确定多个闪存块中第二数据对应的闪存块为损坏闪存块。
读取出各个闪存块的第二数据后,判断第二数据与第一数据是否相同。如果第二数据与第一数据相同,表明该第二数据对应的闪存块在高温测试过程中没有损坏。第二数据与第一数据不同的情况包括未读取出第二数据,或者读取到的第二数据与第一数据不完全相同,例如第一数据为10100011,第二数据为101000。通过判断闪存块中是否能够读取出数据,以及判断第二数据与第一数据的差值是否为零,然后全面确定第二数据与第一数据是否相同。从而用于后续判断该闪存块是否发生损坏,而导致内部存储的数据发生变化,提高了测试的准确度。
首先判断各个闪存块中是否能够读出数据,如果多个闪存块中存在未能读出数据的闪存块,则确定改闪存块中的第二数据与第一数据不同。若判断出各个闪存块中能够读出数据,而且并不存在未能读出数据的闪存块,则确定各个闪送块的第一数据,与该闪存块的第二数据之间的差值。最后判断该差值是否为零,如果差值为零,表明第二数据与第一数据相同。反之,如果差值不为零,则确定第二数据与第一数据不同。
如果某个闪存块在第二时刻读出的第二数据,与该闪存块在第一时刻写入的第一数据不同,那么可以确定该闪存块发生故障,将该闪存块判定为损坏闪存块。首先根据损坏闪存块的第二数据,确定与该第二数据对应的第一数据。然后对损坏闪存块的第一数据进行十进制转换,转换后可以得到损坏闪存块的块标记。而由于前面建立的块标记与物理块地址的映射关系,因此最后根据映射关系,确定损坏闪存块的块标记对应的物理块地址,即可找到损坏闪存块的物理块地址,从而确定损坏闪存块在固态硬盘中的具体位置。通过确定损坏闪存块的第二数据对应的第一数据,然后将第一数据转换为块标记,最后利用映射关系,将块标记映射回物理块地址,从而能够精准确定损坏闪存块的物理块地址。实现了精确定位损坏闪存块在固态硬盘中的实际且具体的位置。
通过采用上述技术方案,在对固态硬盘进行损坏测试前,通过相关工具读取固态硬盘的各个闪存块对应的物理块地址,从而能够确定各个闪存块的分布情况。并根据物理块地址,生成对应的第一数据,由于在固态硬盘中物理块地址是独一无二的,因此不会存在两个相同的第一数据。在测试前再将第一数据写入对应的闪存块,并对固态硬盘进行测试。测试后读取出各个闪存块的第二数据,如果第二数据与第一数据不同,表明该闪存块可能发生损坏,为损坏闪存块。而根据第一数据的唯一性,可以通过与第二数据不同的第一数据,找出该第一数据对应的物理块地址,最后能够根据物理块地址,确定损坏闪存块在固态硬盘中的实际位置。并且通过该方法,在第三方做测试时,能够在不需要获取固态硬盘的损坏闪存块的具体位置读取权限的前提下,确定损坏闪存块的具体位置,从而完成测试。
为了进一步测试固态硬盘在不同温度下的稳定性,还需要将固态硬盘放入不同的温度下进行高温测试。首先确定固态硬盘进行第一次高温测试后已损坏闪存块的第二数量。然后控制固态硬盘所处的环境温度为第二温度,并控制固态硬盘在第二温度的测试时长为第二时长。参照图2,第二温度大于第一温度,第二时长与第一时长不同。参照步骤S130-S150,在第二时长内,实时获取固态硬盘的新增的损坏闪存块的数量,判断损坏闪存块的数量是否大于第二数量。如果新增的损坏闪存块的数量等于第二数量,表明在第二高温的测试过程中不存在新增的损坏闪存块。若损坏闪存块的数量大于第二数量,表明在进行第二温度的高温测试过程中有新增的损坏闪存块。在确定新增损坏闪存块的情况下,根据物理块地址,读取出各个闪存块的第二数据,在判断第二数据与第一数据是否相同,最后找出新增损坏闪存块的具体位置。
参照图2,除了进行第一温度的高温测试和第二温度的高温测试后,还需要依次进行不同温度以及不同时长的高温测试,从而确定固态硬盘在不同温度下损坏闪存块的变化情况。由于每次测试过程中,都会实时读取损坏闪存块的数量变化,从而可以确定新增的损坏闪存块,并能根据物理块地址确定损坏闪存块所处的位置,进而能够得到新增损坏闪存块的变化趋势。由于固态硬盘在实际的工作过程中,固态硬盘所处的环境温度会发生变化,其中包括环境温度升高。因此需要对固态硬盘进行不同梯度温度的损坏测试,将固态硬盘所处的环境温度设为与第一温度不同的第二温度。并确定在第二温度情况下,固态硬盘的损坏闪存块的变化情况,能够使测试更加全面可靠。
根据上述步骤对固态硬盘进行多次高温测试,而在每次测试过程中均能获取到损坏闪存块的数量以及位置,进而能够得到每次测试过程中损坏闪存块的数量数据以及位置数据。然后根据多个数量数据以及多个位置数据,确定损坏闪存块的变化方向,其中变化方向包括水平变化方向、垂直变化方向、斜向变化方向、由中心向四周扩散方向以及由四周向中心包围方向。参照图3中的a以及图3中的b,在多次测试过程中,水平变化方向为损坏闪存块在水平方向上从左向右逐渐增加,或者在水平方向上从右向左逐渐增加。垂直变化方向为损坏闪存块在垂直方向上从上到下逐渐增加,或者在垂直方向上从下到上逐渐增加。斜向变化方向为损坏闪存块从左上到右下逐渐增加,或者从右上到左下逐渐增加。
在多次测试过程中,而由中心向四周扩散方向为固态硬盘最中心的闪存块先损坏,然后该闪存块周围的闪存块逐渐损坏,并向四周扩散。多次测试过程中,由四周向中心包围方向为固态硬盘最边缘区域的闪存块先损坏,然后边缘区域闪存块内侧的闪存块再依次损坏,并向一个中心扩散。
然后对损坏闪存块的变化情况进行预测,确定预测损坏闪存块,即在后续高温测试过程中,预测的可能损坏的闪存块。而预测损坏闪存块需要位于变化方向上,且与损坏闪存块相邻。参照图4,图示为第一次测试过程前,损坏闪存块的分布情况。参照图5,图中A、B以及C为进行第一次测试后,新增的损坏闪存块。参照图6,D和E为进行第2次测试后,新增的损坏闪存块。参照图7,根据对损坏闪存块变化情况的预测,F、G、H以及I为预测损坏闪存块。而在对固态硬盘进行后续测试过程中,判断该预测损坏闪存块是否损坏。若确定预测损坏闪存块发生损坏,则表明预测的结果正确,可以用于在后续实际应用过程中进行损坏闪存块的预测,并将可能发生损坏的闪存块的数据进行提前转移。
根据多次测试过程中损坏闪存块的数量变化以及位置变化,对可能发生损坏的预测损坏闪存块进行预测。并且在进行后续的测试过程,通过判断预测损坏闪存块是否发生损坏,确定预测结果是否正确。在预测结果正确的情况下,可以将预测方法应用于固态硬盘的实际应用过程,预测可能发生损坏的闪存块,并将可能发生损坏的闪存块内部的数据进行提前备份或者转移,降低数据损失的可能性。
本实施例还公开了一种基于固态硬盘的损坏测试装置,参照图8,包括获取模块801、生成模块802、读写模块803以及判断模块804,其中:
获取模块801,用于获取固态硬盘的各个闪存块对应的物理块地址。
生成模块802,用于根据各个物理块地址,生成对应的第一数据。
读写模块803,用于在第一时刻,将各个第一数据,写入对应的闪存块。
读写模块803,用于对固态硬盘进行第一时长的预设测试后,在第二时刻,根据各个物理块地址,读取出各个闪存块的第二数据,第二时刻与第一时刻间隔第一时长。
判断模块804,用于判断第二数据与第一数据是否相同,若第二数据与第一数据不同,确定多个闪存块中第二数据对应的闪存块为损坏闪存块。
在一种可能的实施方式中,获取模块801,用于获取固态硬盘的多个闪存块的总数量。
生成模块802,用于建立各个物理块地址与块标记的映射关系,块标记的数值小于或等于总数量,且块标记的数值为正整数。
生成模块802,用于对各个块标记进行二进制转换,得到各个物理块地址对应的第一数据。
在一种可能的实施方式中,获取模块801,用于确定固态硬盘的已损坏闪存块的第一数量。
判断模块804,用于控制固态硬盘的环境温度为第一温度,并使环境温度处于第一温度的时长为第一时长。
获取模块801,用于在第一时长内,实时获取固态硬盘的损坏闪存块的数量,判断损坏闪存块的数量是否大于第一数量,若损坏闪存块的数量大于第一数量,则根据各个物理块地址,读取出各个闪存块的第二数据。
在一种可能的实施方式中,获取模块801,用于确定损坏闪存块的第二数据对应的第一数据。
生成模块802,用于对损坏闪存块的第一数据进行十进制转换,得的损坏闪存块的块标记。
生成模块802,用于根据映射关系,确定损坏闪存块的块标记对应的物理块地址,得的损坏闪存块的物理块地址。
在一种可能的实施方式中,获取模块801,用于确定固态硬盘的已损坏闪存块的第二数量。
判断模块804,用于控制固态硬盘的环境温度为第二温度,并使环境温度处于第二温度的时长为第二时长,第二温度大于第一温度,第二时长与第一时长不同。
获取模块801,用于在第二时长内,实时获取固态硬盘的损坏闪存块的数量,判断损坏闪存坏的数量是否大于第二数量,若损坏闪存块的数量大于第二数量,则根据各个物理块地址,读取出各个闪存块的第二数据。
在一种可能的实施方式中,获取模块801,用于在对固态硬盘进行多次测试过程中,确定每次测试过程中损坏闪存块的数量数据以及位置数据。
生成模块802,用于基于多个数量数据以及多个位置数据,确定损坏闪存块的变化方向。
生成模块802,用于对损坏闪存块的变化情况进行预测,确定预测损坏闪存块,预测损坏闪存块位于变化方向上,预测损坏闪存块且与损坏闪存块相邻。
判断模块804,用于在对固态硬盘进行后续测试过程中,判断预测损坏闪存块是否损坏,若确定预测损坏闪存块损坏,则确定预测的结果正确。
在一种可能的实施方式中,判断模块804,用于判断各个闪存块中是否能够读取出数据,若多个闪存块中,存在未能读出数据的闪存块,则确定未能读出数据的闪存块中的第二数据与第一数据不同。
生成模块802,用于若多个闪存块中,不存在未能读出数据的闪存块,则确定各个闪存块的第二数据与第一数据的差值。
判断模块804,用于判断差值是否为零,从而确定第二数据与第一数据是否相同。
需要说明的是:上述实施例提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置和方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本实施例还公开了一种电子设备,参照图9,电子设备可以包括:至少一个处理器901,至少一个通信总线902,用户接口903,网络接口904,至少一个存储器905。
其中,通信总线902用于实现这些组件之间的连接通信。
其中,用户接口903可以包括显示屏(Display)、摄像头(Camera),可选用户接口903还可以包括标准的有线接口、无线接口。
其中,网络接口904可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
其中,处理器901可以包括一个或者多个处理核心。处理器901利用各种接口和线路连接整个服务器内的各个部分,通过运行或执行存储在存储器905内的指令、程序、代码集或指令集,以及调用存储在存储器905内的数据,执行服务器的各种功能和处理数据。可选的,处理器901可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器901可集成中央处理器901(CentralProcessing Unit,CPU)、图像处理器901(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器901中,单独通过一块芯片进行实现。
其中,存储器905可以包括随机存储器905(Random Access Memory,RAM),也可以包括只读存储器905(Read-Only Memory)。可选的,该存储器905包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器905可用于存储指令、程序、代码、代码集或指令集。存储器905可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及的数据等。存储器905可选的还可以是至少一个位于远离前述处理器901的存储装置。如图所示,作为一种计算机存储介质的存储器905中可以包括操作系统、网络通信模块、用户接口903模块以及一种基于固态硬盘的损坏测试方法的应用程序。
在图9所示的电子设备中,用户接口903主要用于为用户提供输入的接口,获取用户输入的数据;而处理器901可以用于调用存储器905中存储一种基于固态硬盘的损坏测试方法的应用程序,当由一个或多个处理器901执行时,使得电子设备执行如上述实施例中一个或多个的方法。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必需的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所披露的装置,可通过其他的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些服务接口,装置或单元的间接耦合或通信连接,可以是电性或其他的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器905中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器905中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储器905包括:U盘、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述者,仅为本公开的示例性实施例,不能以此限定本公开的范围。即但凡依本公开教导所作的等效变化与修饰,皆仍属本公开涵盖的范围内。本领域技术人员在考虑说明书及实践真理的公开后,将容易想到本公开的其他实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未记载的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的范围和精神由权利要求限定。
Claims (10)
1.一种基于固态硬盘的损坏测试方法,其特征在于,所述方法包括:
获取固态硬盘的各个闪存块对应的物理块地址;
根据各个所述物理块地址,生成对应的第一数据;
在第一时刻,将各个所述第一数据,写入对应的所述闪存块;
对所述固态硬盘进行第一时长的预设测试后,在第二时刻,根据各个所述物理块地址,读取出各个所述闪存块的第二数据,所述第二时刻与所述第一时刻间隔所述第一时长;
判断所述第二数据与所述第一数据是否相同,若所述第二数据与所述第一数据不同,确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块。
2.根据权利要求1所述的一种基于固态硬盘的损坏测试方法,其特征在于,所述根据所述物理块地址,生成对应的第一数据,具体包括:
获取所述固态硬盘的多个闪存块的总数量;
建立各个所述物理块地址与块标记的映射关系,所述块标记的数值小于或等于所述总数量,且所述块标记的数值为正整数;
对各个所述块标记进行二进制转换,得到各个所述物理块地址对应的所述第一数据。
3.根据权利要求1所述的一种基于固态硬盘的损坏测试方法,其特征在于,所述对所述固态硬盘进行第一时长的预设测试,具体包括:
确定所述固态硬盘的已损坏闪存块的第一数量;
控制所述固态硬盘的环境温度为第一温度,并使所述环境温度处于所述第一温度的时长为所述第一时长;
在所述第一时长内,实时获取所述固态硬盘的损坏闪存块的数量,判断所述损坏闪存块的数量是否大于所述第一数量,若所述损坏闪存块的数量大于所述第一数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据。
4.根据权利要求2所述的一种基于固态硬盘的损坏测试方法,其特征在于,所述确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块之后,所述方法还包括:
确定所述损坏闪存块的第二数据对应的第一数据;
对所述损坏闪存块的第一数据进行十进制转换,得的所述损坏闪存块的块标记;
根据所述映射关系,确定所述损坏闪存块的块标记对应的物理块地址,得的所述损坏闪存块的物理块地址。
5.根据权利要求3所述的一种基于固态硬盘的损坏测试方法,其特征在于,所述若所述损坏闪存块的数量大于所述第一数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据之后,所述方法还包括:
确定所述固态硬盘的已损坏闪存块的第二数量;
控制所述固态硬盘的环境温度为第二温度,并使所述环境温度处于所述第二温度的时长为第二时长,所述第二温度大于所述第一温度,所述第二时长与所述第一时长不同;
在所述第二时长内,实时获取所述固态硬盘的损坏闪存块的数量,判断所述损坏闪存坏的数量是否大于所述第二数量,若所述损坏闪存块的数量大于所述第二数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据。
6.根据权利要求1所述的一种基于固态硬盘的损坏测试方法,其特征在于,所述若所述第二数据与所述第一数据不同,确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块之后,所述方法还包括:
在对所述固态硬盘进行多次测试过程中,确定每次测试过程中所述损坏闪存块的数量数据以及位置数据;
基于多个所述数量数据以及多个所述位置数据,确定所述损坏闪存块的变化方向;
对损坏闪存块的变化情况进行预测,确定预测损坏闪存块,所述预测损坏闪存块位于所述变化方向上,所述预测损坏闪存块且与所述损坏闪存块相邻;
在对固态硬盘进行后续测试过程中,判断所述预测损坏闪存块是否损坏,若确定所述预测损坏闪存块损坏,则确定所述预测的结果正确。
7.根据权利要求1所述的一种基于固态硬盘的损坏测试方法,其特征在于,所述判断所述第二数据与所述第一数据是否相同,具体包括:
判断各个所述闪存块中是否能够读取出数据,若多个所述闪存块中,存在未能读出数据的闪存块,则确定所述未能读出数据的闪存块中的第二数据与所述第一数据不同;
若多个所述闪存块中,不存在未能读出数据的闪存块,则确定各个所述闪存块的第二数据与所述第一数据的差值;
判断所述差值是否为零,从而确定所述第二数据与第一数据所述是否相同。
8.一种基于固态硬盘的损坏测试装置,其特征在于,包括获取模块(801)、生成模块(802)、读写模块(803)以及判断模块(804),其中:
所述获取模块(801),用于获取固态硬盘的各个闪存块对应的物理块地址;
所述生成模块(802),用于根据各个所述物理块地址,生成对应的第一数据;
所述读写模块(803),用于在第一时刻,将各个所述第一数据,写入对应的所述闪存块;
所述读写模块(803),用于对所述固态硬盘进行第一时长的预设测试后,在第二时刻,根据各个所述物理块地址,读取出各个所述闪存块的第二数据,所述第二时刻与所述第一时刻间隔所述第一时长;
所述判断模块(804),用于判断所述第二数据与所述第一数据是否相同,若所述第二数据与所述第一数据不同,确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块。
9.一种电子设备,其特征在于,包括处理器(901)、存储器(905)、用户接口(903)以及网络接口(904),所述存储器(905)用于存储指令,所述用户接口(903)和所述网络接口(904)均用于与其他设备通信,所述处理器(901)用于执行所述存储器(905)中存储的指令,以使所述电子设备执行如权利要求1-7任意一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,当所述指令被执行时,执行如权利要求1-7任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311488702.4A CN117497035A (zh) | 2023-11-09 | 2023-11-09 | 一种基于固态硬盘的损坏测试方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311488702.4A CN117497035A (zh) | 2023-11-09 | 2023-11-09 | 一种基于固态硬盘的损坏测试方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117497035A true CN117497035A (zh) | 2024-02-02 |
Family
ID=89682463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311488702.4A Pending CN117497035A (zh) | 2023-11-09 | 2023-11-09 | 一种基于固态硬盘的损坏测试方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117497035A (zh) |
-
2023
- 2023-11-09 CN CN202311488702.4A patent/CN117497035A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108133732B (zh) | 闪存芯片的性能测试方法、装置、设备及存储介质 | |
US10310749B2 (en) | System and method for predicting disk failure | |
CN102568522B (zh) | 硬盘性能的测试方法和装置 | |
TWI410976B (zh) | 固態儲存媒體可靠度的測試方法 | |
US7464306B1 (en) | Status of overall health of nonvolatile memory | |
CN104516843A (zh) | 基于fpga的非安装型存储器测试装置 | |
CN108170366A (zh) | 存储设备中的存储介质管理方法、装置和存储设备 | |
JP5105351B2 (ja) | 不揮発性半導体記憶装置 | |
JP2007220284A (ja) | 改善された冗長性分析のためのメモリデバイスの欠陥サマリデータの削減 | |
CN108039190A (zh) | 一种测试方法及装置 | |
CN107068199B (zh) | 一种ssd硬盘的性能测试方法 | |
CN116340076B (zh) | 硬盘性能测试方法、装置及介质 | |
CN117435416B (zh) | 一种存储器的测试系统及测试方法 | |
CN108269606A (zh) | 一种用于eMMC芯片存储参数测试的方法及系统 | |
CN111694684B (zh) | 存储设备的异常构造方法、装置、电子设备及存储介质 | |
CN112985488B (zh) | 一种用于传感器的温度应力加速寿命试验系统及方法 | |
CN112133357B (zh) | 一种eMMC的测试方法及装置 | |
US9153345B2 (en) | Error generating apparatus for solid state drive tester | |
CN115206405A (zh) | 固态硬盘的测试方法、测试装置及计算机可读存储介质 | |
CN117149550A (zh) | 一种固态硬盘性能检测方法、装置以及电子设备 | |
CN117497035A (zh) | 一种基于固态硬盘的损坏测试方法、装置及电子设备 | |
CN117290165A (zh) | 一种芯片测试的方法、系统、装置及存储介质 | |
CN110444247A (zh) | 存储设备写错误纠错能力的测试装置 | |
CN114764596A (zh) | 延长硬盘寿命方法、装置、计算机设备和存储介质 | |
CN112540881B (zh) | 存储装置测试管理方法以及存储装置测试管理系统 |
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 |