技术新讯 > 信息存储应用技术 > 一种基于固态硬盘的损坏测试方法、装置及电子设备与流程  >  正文

一种基于固态硬盘的损坏测试方法、装置及电子设备与流程

  • 国知局
  • 2024-07-31 19:37:55

本技术涉及存储检测的,具体涉及一种基于固态硬盘的损坏测试方法、装置及电子设备。

背景技术:

1、固态硬盘(solid state disk,ssd)是一种用固态电子存储芯片阵列制成的硬盘,主要由主控单元和存储阵列组成。它没有机械运动部件,因此具有更高的读取速度、更低的功耗、更强的抗震性能和更低的噪音等优点。相比传统的机械硬盘,固态硬盘的数据传输速度更快,启动系统和应用程序也更快,因此能够提高整体的系统性能。

2、固态硬盘的闪存块是存储数据的主要单元,也是固态硬盘的核心部件之一。闪存块是一种非易失性存储器,即掉电后数据也不会丢失。每个闪存块都是由一个浮栅极的mos管存储单一位元数据,通过控制极加电压来控制数据的写入和擦除。在固态硬盘中,闪存块按照特定的组织结构排布,每个区块中包含一定数量的闪存块,根据需要担负不同的任务,例如数据读写、垃圾回收以及磨损均衡等。闪存块的可靠性直接影响了固态硬盘的性能和寿命。

3、进一步地,在实际的应用过程中,固态硬盘的工作环境温度会发生变化,而温度的变化可能导致固态硬盘的闪存块发生损坏。而固态硬盘的闪存块如果发生损坏,很难对其进行修复,从而导致损坏闪存块的数据丢失。因此需要根据固态硬盘闪存块在高温环境下的损坏变化情况,预测可能发生损坏的闪存块。从而提前将可能发生损坏的闪存块的数据进行备份,防止数据丢失。

4、目前在做固态硬盘在高温环境下的损坏测试时,通常会采用自我监测、分析和报告技术(self-monitoring analysis and reporting technology,smart)来对固态硬盘的闪存颗粒磨损度、损坏闪存块数量等进行监测,及时分析并预报硬盘可能发生的问题。但是通过这一测试方法中获取的对于闪存块的损坏情况较为单一,无法确定损坏闪存块的具体位置,进而难以确定损坏闪存块的变化情况,无法对闪存块的损坏变化情况进行预测。因此需要一种方法能够在对固态硬盘进行测试的过程中,确定损坏闪存块的具体位置。

技术实现思路

1、本技术提供一种基于固态硬盘的损坏测试方法、装置及电子设备,能够在对固态硬盘进行测试的过程中,确定损坏闪存块的具体位置。

2、在本技术的第一方面提供了一种基于固态硬盘的损坏测试方法,所述方法包括:

3、获取固态硬盘的各个闪存块对应的物理块地址;

4、根据各个所述物理块地址,生成对应的第一数据;

5、在第一时刻,将各个所述第一数据,写入对应的所述闪存块;

6、对所述固态硬盘进行第一时长的预设测试后,在第二时刻,根据各个所述物理块地址,读取出各个所述闪存块的第二数据,所述第二时刻与所述第一时刻间隔所述第一时长;

7、判断所述第二数据与所述第一数据是否相同,若所述第二数据与所述第一数据不同,确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块。

8、通过采用上述技术方案,在对固态硬盘进行损坏测试前,获取固态硬盘的各个闪存块对应的物理块地址,从而能够确定各个闪存块的分布情况。并根据物理块地址,生成对应的第一数据,由于在固态硬盘中物理块地址是独一无二的,因此不会存在两个相同的第一数据。在测试前再将第一数据写入对应的闪存块,并对固态硬盘进行测试。测试后读取出各个闪存块的第二数据,如果第二数据与第一数据不同,表明该闪存块可能发生损坏,为损坏闪存块。而根据第一数据的唯一性,可以通过与第二数据不同的第一数据,找出该第一数据对应的物理块地址,最后能够根据物理块地址,确定损坏闪存块在固态硬盘中的实际位置。

9、可选的,所述根据所述物理块地址,生成对应的第一数据,具体包括:

10、获取所述固态硬盘的多个闪存块的总数量;

11、建立各个所述物理块地址与块标记的映射关系,所述块标记的数值小于或等于所述总数量,且所述块标记的数值为正整数;

12、对各个所述块标记进行二进制转换,得到各个所述物理块地址对应的所述第一数据。

13、通过采用上述技术方案,由于物理块地址通常较长,如果直接将物理块地址转换成第一数据,会导致第一数据的长度较长,从而增加了数据写入的时长。而将物理块与块标记建立映射关系,并且块标记的数值小于闪存块的总数,块标记的数据长度会远远小于物理块数据的长度,从而转换成二进制的第一数据的长度也会较小,能够极大的降低写入数据的时长。并且本质上第一数据还是与物理块地址一一对应,能够保证第一数据的唯一性,以确保后续检测结果判断的准确性。

14、可选的,所述对所述固态硬盘进行第一时长的预设测试,具体包括:

15、确定所述固态硬盘的已损坏闪存块的第一数量;

16、控制所述固态硬盘的环境温度为第一温度,并使所述环境温度处于所述第一温度的时长为所述第一时长;

17、在所述第一时长内,实时获取所述固态硬盘的损坏闪存块的数量,判断所述损坏闪存块的数量是否大于所述第一数量,若所述损坏闪存块的数量大于所述第一数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据。

18、通过采用上述技术方案,在对固态硬盘进行第一温度的测试时,实时获取固态硬盘损坏闪存块的数量。由于在对固态硬盘进行测试之前,已经获取固态硬盘已损坏闪存块的第一数量。因此可以比对损坏闪存块的数量是否大于第一数量,进而判断是否有新增损坏闪存块。在有新增损坏闪存块的前提下,再读取各个闪存块的第二数据,并用于后续判断是否与第一数据相同,从而确定闪送块是否损坏。进而在测试过程,不用实时读取每一个闪存块的数据,极大的提高了测试的效率。

19、可选的,所述确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块之后,所述方法还包括:

20、确定所述损坏闪存块的第二数据对应的第一数据;

21、对所述损坏闪存块的第一数据进行十进制转换,得的所述损坏闪存块的块标记;

22、根据所述映射关系,确定所述损坏闪存块的块标记对应的物理块地址,得的所述损坏闪存块的物理块地址。

23、通过采用上述技术方案,通过确定损坏闪存块的第二数据对应的第一数据,然后将第一数据转换为块标记,最后利用映射关系,将块标记映射回物理块地址,从而能够精准确定损坏闪存块的物理块地址。实现了精确定位损坏闪存块在固态硬盘中的实际且具体的位置。

24、可选的,所述若所述损坏闪存块的数量大于所述第一数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据之后,所述方法还包括:

25、确定所述固态硬盘的已损坏闪存块的第二数量;

26、控制所述固态硬盘的环境温度为第二温度,并使所述环境温度处于所述第二温度的时长为第二时长,所述第二温度大于所述第一温度,所述第二时长与所述第一时长不同;

27、在所述第二时长内,实时获取所述固态硬盘的损坏闪存块的数量,判断所述损坏闪存坏的数量是否大于所述第二数量,若所述损坏闪存块的数量大于所述第二数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据。

28、通过采用上述技术方案,由于固态硬盘在实际的工作过程中,固态硬盘所处的环境温度会发生变化,其中包括环境温度升高。因此需要对固态硬盘进行不同梯度温度的损坏测试,将固态硬盘所处的环境温度设为与第一温度不同的第二温度。并确定在第二温度情况下,固态硬盘的损坏闪存块的变化情况,能够使测试更加全面可靠。

29、可选的,所述若所述第二数据与所述第一数据不同,确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块之后,所述方法还包括:

30、在对所述固态硬盘进行多次测试过程中,确定每次测试过程中所述损坏闪存块的数量数据以及位置数据;

31、基于多个所述数量数据以及多个所述位置数据,确定所述损坏闪存块的变化方向;

32、对损坏闪存块的变化情况进行预测,确定预测损坏闪存块,所述预测损坏闪存块位于所述变化方向上,所述预测损坏闪存块且与所述损坏闪存块相邻;

33、在对固态硬盘进行后续测试过程中,判断所述预测损坏闪存块是否损坏,若确定所述预测损坏闪存块损坏,则确定所述预测的结果正确。

34、通过采用上述技术方案,根据多次测试过程中损坏闪存块的数量变化以及位置变化,对可能发生损坏的预测损坏闪存块进行预测。并且在进行后续的测试过程,通过判断预测损坏闪存块是否发生损坏,确定预测结果是否正确。在预测结果正确的情况下,可以将预测方法应用于固态硬盘的实际应用过程,预测可能发生损坏的闪存块,并将可能发生损坏的闪存块内部的数据进行提前备份或者转移,降低数据损失的可能性。

35、可选的,所述判断所述第二数据与所述第一数据是否相同,具体包括:

36、判断各个所述闪存块中是否能够读取出数据,若多个所述闪存块中,存在未能读出数据的闪存块,则确定所述未能读出数据的闪存块中的第二数据与所述第一数据不同;

37、若多个所述闪存块中,不存在未能读出数据的闪存块,则确定各个所述闪存块的第二数据与所述第一数据的差值;

38、判断所述差值是否为零,从而确定所述第二数据与第一数据所述是否相同。

39、通过采用上述技术方案,通过判断闪存块中是否能够读取出数据,以及判断第二数据与第一数据的差值是否为零,然后全面确定第二数据与第一数据是否相同。从而用于后续判断该闪存块是否发生损坏,而导致内部存储的数据发生变化,提高了测试的准确度。

40、在本技术的第二方面提供了一种基于固态硬盘的损坏测试装置,包括获取模块、生成模块、读写模块以及判断模块,其中:

41、所述获取模块,用于获取固态硬盘的各个闪存块对应的物理块地址;

42、所述生成模块,用于根据各个所述物理块地址,生成对应的第一数据;

43、所述读写模块,用于在第一时刻,将各个所述第一数据,写入对应的所述闪存块;

44、所述读写模块,用于对所述固态硬盘进行第一时长的预设测试后,在第二时刻,根据各个所述物理块地址,读取出各个所述闪存块的第二数据,所述第二时刻与所述第一时刻间隔所述第一时长;

45、所述判断模块,用于判断所述第二数据与所述第一数据是否相同,若所述第二数据与所述第一数据不同,确定多个所述闪存块中所述第二数据对应的闪存块为损坏闪存块。

46、可选的,所述获取模块,用于获取所述固态硬盘的多个闪存块的总数量;

47、所述生成模块,用于建立各个所述物理块地址与块标记的映射关系,所述块标记的数值小于或等于所述总数量,且所述块标记的数值为正整数;

48、所述生成模块,用于对各个所述块标记进行二进制转换,得到各个所述物理块地址对应的所述第一数据。

49、可选的,所述获取模块,用于确定所述固态硬盘的已损坏闪存块的第一数量;

50、所述判断模块,用于控制所述固态硬盘的环境温度为第一温度,并使所述环境温度处于所述第一温度的时长为所述第一时长;

51、所述获取模块,用于在所述第一时长内,实时获取所述固态硬盘的损坏闪存块的数量,判断所述损坏闪存块的数量是否大于所述第一数量,若所述损坏闪存块的数量大于所述第一数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据。

52、可选的,所述获取模块,用于确定所述损坏闪存块的第二数据对应的第一数据;

53、所述生成模块,用于对所述损坏闪存块的第一数据进行十进制转换,得的所述损坏闪存块的块标记;

54、所述生成模块,用于根据所述映射关系,确定所述损坏闪存块的块标记对应的物理块地址,得的所述损坏闪存块的物理块地址。

55、可选的,所述获取模块,用于确定所述固态硬盘的已损坏闪存块的第二数量;

56、所述判断模块,用于控制所述固态硬盘的环境温度为第二温度,并使所述环境温度处于所述第二温度的时长为第二时长,所述第二温度大于所述第一温度,所述第二时长与所述第一时长不同;

57、所述获取模块,用于在所述第二时长内,实时获取所述固态硬盘的损坏闪存块的数量,判断所述损坏闪存坏的数量是否大于所述第二数量,若所述损坏闪存块的数量大于所述第二数量,则根据各个所述物理块地址,读取出各个所述闪存块的所述第二数据。

58、可选的,所述获取模块,用于在对所述固态硬盘进行多次测试过程中,确定每次测试过程中所述损坏闪存块的数量数据以及位置数据;

59、所述生成模块,用于基于多个所述数量数据以及多个所述位置数据,确定所述损坏闪存块的变化方向;

60、所述生成模块,用于对损坏闪存块的变化情况进行预测,确定预测损坏闪存块,所述预测损坏闪存块位于所述变化方向上,所述预测损坏闪存块且与所述损坏闪存块相邻;

61、所述判断模块,用于在对固态硬盘进行后续测试过程中,判断所述预测损坏闪存块是否损坏,若确定所述预测损坏闪存块损坏,则确定所述预测的结果正确。

62、可选的,所述判断模块,用于判断各个所述闪存块中是否能够读取出数据,若多个所述闪存块中,存在未能读出数据的闪存块,则确定所述未能读出数据的闪存块中的第二数据与所述第一数据不同;

63、所述生成模块,用于若多个所述闪存块中,不存在未能读出数据的闪存块,则确定各个所述闪存块的第二数据与所述第一数据的差值;

64、所述判断模块,用于判断所述差值是否为零,从而确定所述第二数据与第一数据所述是否相同。

65、在本技术的第三方面提供了一种电子设备,包括处理器、存储器、用户接口以及网络接口,所述存储器用于存储指令,所述用户接口和所述网络接口均用于与其他设备通信,所述处理器用于执行所述存储器中存储的指令,以使所述电子设备执行如上述任意一项所述的方法。

66、在本技术的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有指令,当所述指令被执行时,执行如上述任意一项所述的方法。

67、综上所述,本技术实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:

68、1.在对固态硬盘进行损坏测试前,获取固态硬盘的各个闪存块对应的物理块地址,从而能够确定各个闪存块的分布情况。并根据物理块地址,生成对应的第一数据,由于在固态硬盘中物理块地址是独一无二的,因此不会存在两个相同的第一数据。在测试前再将第一数据写入对应的闪存块,并对固态硬盘进行测试。测试后读取出各个闪存块的第二数据,如果第二数据与第一数据不同,表明该闪存块可能发生损坏,为损坏闪存块。而根据第一数据的唯一性,可以通过与第二数据不同的第一数据,找出该第一数据对应的物理块地址,最后能够根据物理块地址,确定损坏闪存块在固态硬盘中的实际位置。

69、2.由于物理块地址通常较长,如果直接将物理块地址转换成第一数据,会导致第一数据的长度较长,从而增加了数据写入的时长。而将物理块与块标记建立映射关系,并且块标记的数值小于闪存块的总数,块标记的数据长度会远远小于物理块数据的长度,从而转换成二进制的第一数据的长度也会较小,能够极大的降低写入数据的时长。并且本质上第一数据还是与物理块地址一一对应,能够保证第一数据的唯一性,以确保后续检测结果判断的准确性。

70、3.在对固态硬盘进行第一温度的测试时,实时获取固态硬盘损坏闪存块的数量。由于在对固态硬盘进行测试之前,已经获取固态硬盘已损坏闪存块的第一数量。因此可以比对损坏闪存块的数量是否大于第一数量,进而判断是否有新增损坏闪存块。在有新增损坏闪存块的前提下,再读取各个闪存块的第二数据,并用于后续判断是否与第一数据相同,从而确定闪送块是否损坏。进而在测试过程,不用实时读取每一个闪存块的数据,极大的提高了测试的效率。

71、4.根据多次测试过程中损坏闪存块的数量变化以及位置变化,对可能发生损坏的预测损坏闪存块进行预测。并且在进行后续的测试过程,通过判断预测损坏闪存块是否发生损坏,确定预测结果是否正确。在预测结果正确的情况下,可以将预测方法应用于固态硬盘的实际应用过程,预测可能发生损坏的闪存块,并将可能发生损坏的闪存块内部的数据进行提前备份或者转移,降低数据损失的可能性。

本文地址:https://www.jishuxx.com/zhuanli/20240731/183318.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。