一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

SSD数据测试方法、装置、存储介质及测试设备与流程

2022-04-25 00:46:36 来源:中国专利 TAG:

ssd数据测试方法、装置、存储介质及测试设备
技术领域
1.本发明涉及存储设备测试技术领域,尤其涉及一种ssd数据测试方法、装置、存储介质及测试设备。


背景技术:

2.ssd(solid state disk,即固态硬盘)最主要的功能是数据存储,数据一致性是其最基本也最重要的要求。因此在ssd(固态硬盘)测试过程中,对写入数据进行数据校验,确认写入数据与预期数据相符,就是测试的重中之重。
3.在测试过程中,会构造各种测试场景,写入各种数据,然后通过对写入数据进行校验,来确认数据的正确性。在测试过程中,一个可以快速进行数据校验,且在数据出错时,快速定位出错位置的校验方法,有利于提高测试和开发的效率和准确性。。
4.常见的数据校验方法有:
5.奇偶校验:其实现方法是在数据的存储和传输中,在字节中额外增加一个比特位,用来传送奇/偶校验位来检验错误。其特点是能检测信息传输过程中的1位错误。缺点是无法定位出错位置。
6.crc(cyclic redundancy check)循环冗余校验:其实现方法是利用除数以及余数的原理来做错误侦测的,在早期的通信中运用广泛。它是通过某种数学运算来建立数据位和校验位的约定关系的。其特点是信息字段和校验字段的长度可以任意选定,编码和解码方法简单,检错和纠错能力强。缺点是在某些特定的情况下,如果数据已经出错,但是按照crc计算之后,结果可能为0即不会报错。
7.md5(message digest algorithm 5)校验:其实现方法是将一个任意长度的数据字符串转化成短的固定长度的值的单向操作。其基于任意两个字符串不应有相同的散列值,但是要人为的创造出来两个散列值相同的字符串是比较困难的。其典型应用是对一段文本信息产生信息摘要,以防止被篡改。用这种方法进行校验,可以判断接收前后数据是否有变化,但是无法判断数据具体的出错位置。
8.虽然上述校验方法都可以用在ssd数据校验上,但是针对ssd的独特性,还有一定的改进空间。在ssd数据校验的时候,如何在数据出错的时候知道出错的具体位置、期望的数据和实际读取到的数据;以及在数据校验的时候,如何对每个bit进行数据校验,以保证每个bit的正确性,对ssd测试具有重要意义。


技术实现要素:

9.鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的ssd数据测试方法、装置、存储介质及测试设备。
10.本发明的一个方面,提供了一种ssd数据测试方法,所述方法包括:
11.在将测试数据写入ssd设备时,按照所述测试数据的数据模板将测试数据写入预设的第一缓存区进行存储备份;
12.在对写入ssd设备的测试数据进行读取测试时,从所述第一缓存区获取备份测试数据,并将所述备份测试数据按照所述数据模板填充到预设的第二缓存区;
13.根据填充有备份测试数据的第二缓存区对记录有读取数据的目标缓存区按位进行数据校验。
14.进一步地,若数据校验失败,所述方法还包括:
15.将数据校验结果输出到显示屏幕,并对发生数据错误的位置进行标记。
16.进一步地,在所述从所述第一缓存区获取备份测试数据之前,所述方法还包括:
17.获取读取数据的数据长度;
18.配置与所述数据长度相等的数据缓存区作为第二缓存区。
19.进一步地,所述根据填充有备份测试数据的第二缓存区对记录有读取数据的目标缓存区按位进行数据校验,包括:
20.按照所述数据模板对第二缓存区和目标缓存区中处于同一模板位置的数据按位依次进行数据比较。
21.本发明的第二方面,提供了一种ssd数据测试装置,所述装置包括:
22.第一处理模块,用于在将测试数据写入ssd设备时,按照所述测试数据的数据模板将测试数据写入预设的第一缓存区进行存储备份;
23.第二处理模块,用于在对写入ssd设备的测试数据进行读取测试时,从所述第一缓存区获取备份测试数据,并将所述备份测试数据按照所述数据模板填充到预设的第二缓存区;
24.测试模块,用于根据填充有备份测试数据的第二缓存区对记录有读取数据的目标缓存区按位进行数据校验。
25.进一步地,所述测试模块,还用于在数据校验失败时,将数据校验结果输出到显示屏幕,并对发生数据错误的位置进行标记。
26.进一步地,所述第二处理模块,还用于在从所述第一缓存区获取备份测试数据之前,获取读取数据的数据长度,配置与所述数据长度相等的数据缓存区作为第二缓存区。
27.进一步地,所述测试模块,用于根据所述数据模板对第二缓存区和目标缓存区中处于同一模板位置的数据按位依次进行数据比较。
28.本发明的另一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上ssd数据测试方法的步骤。
29.本发明的又一个方面,还提供了一种测试设备,该设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上ssd数据测试方法的步骤。
30.本发明实施例提供的ssd数据测试方法、装置、存储介质及测试设备,在对写入ssd设备的测试数据进行读取测试时,通过申请一段额外的缓存区以按照数据模板记录之前写入ssd的测试数据,然后根据数据模板对该填充有测试数据的缓存区和写有读取数据的目标缓存区中处于同一模板位置的数据按位进行一一校验,充分验证ssd数据的可靠性,并且出错时候,能够快速定位出错位置,提升测试效率。
31.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够
更明显易懂,以下特举本发明的具体实施方式。
附图说明
32.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
33.图1为本发明实施例提供的ssd数据测试方法的流程图;
34.图2为本发明实施例提供的ssd数据测试装置的结构框图。
具体实施方式
35.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
36.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
37.本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。
38.图1示意性示出了本发明一个实施例的ssd数据测试方法的流程图。参照图1,本发明实施例的ssd数据测试方法具体包括以下步骤:
39.s11、在将测试数据写入ssd设备时,按照所述测试数据的数据模板将测试数据写入预设的第一缓存区进行存储备份。
40.本实施例中,测试数据以pattern模板的方式实现,通过pattern模板按照对应的数据模板格式记录在写入过程中用到的数据信息。具体的,测试设备中设置有pattern模板集合,包括有多个pattern模板,以测试不同的数据。
41.第一缓存区的主要作用是在将测试数据写入ssd设备过程中,记录写入数据的信息,包括位置和测试数据的数据模板,实现测试数据备份。
42.具体的,在开始测试之前,依据测试盘的容量,申请一段缓存区buffer作为第一缓存区,用于记录写入的信息。在数据写入的时候,按照所述测试数据的数据模板将测试数据写入预设的第一缓存区进行存储备份。
43.s12、在对写入ssd设备的测试数据进行读取测试时,从所述第一缓存区获取备份测试数据,并将所述备份测试数据按照所述数据模板填充到预设的第二缓存区。
44.进一步地,在从第一缓存区获取备份测试数据之前,获取读取数据的数据长度,配置与所述数据长度相等的数据缓存区作为第二缓存区。
45.具体的,在对写入ssd设备的测试数据进行读取测试时,需要申请一段与读取数据
长度相等的数据缓存区,依据第一缓存区的备份测试数据按照数据模板对这段数据缓存区进行填充,作为校验数据缓存区。
46.s13、根据填充有备份测试数据的第二缓存区对记录有读取数据的目标缓存区按位进行数据校验。
47.在本发明实施例中,步骤s13中的根据填充有备份测试数据的第二缓存区对记录有读取数据的目标缓存区按位进行数据校验,具体实现方式为按照所述数据模板对第二缓存区和目标缓存区中处于同一模板位置的数据按位依次进行数据比较。
48.本实施例中,在完成第二缓存区填充之后,根据填充有备份测试数据的第二缓存区对记录有读取数据的目标缓存区按位进行比较,实现数据校验,如果相同,则检验成功,否则,校验失败。如果失败,可以按照预设策略进行失败流程处理,具体的,可以将数据校验结果输出到显示屏幕,并对发生数据错误的位置进行标记。
49.本发明提出的ssd数据测试方法,在数据校验的过程中,可以对读取数据的每个bit进行一一校验,充分验证ssd数据的可靠性,并且出错时候,能够快速定位出错位置,提升测试效率。
50.对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
51.图2示意性示出了本发明一个实施例的ssd数据测试装置的结构示意图。参照图2,本发明实施例的ssd数据测试装置具体包括第一处理模块201、第二处理模块202以及测试模块203,其中:
52.第一处理模块201,用于在将测试数据写入ssd设备时,按照所述测试数据的数据模板将测试数据写入预设的第一缓存区进行存储备份;
53.第二处理模块202,用于在对写入ssd设备的测试数据进行读取测试时,从所述第一缓存区获取备份测试数据,并将所述备份测试数据按照所述数据模板填充到预设的第二缓存区;
54.测试模块203,用于根据填充有备份测试数据的第二缓存区对记录有读取数据的目标缓存区按位进行数据校验。
55.本发明实施例提出的ssd数据测试装置,能够对写入的数据进行按位校验,并且出错时候,能够快速定位出错位置,有利于开发快速定位问题。
56.本发明实施例中,所述测试模块203,还用于在数据校验失败时,将数据校验结果输出到显示屏幕,并对发生数据错误的位置进行标记。
57.本发明实施例中,所述第二处理模块202,还用于在从所述第一缓存区获取备份测试数据之前,获取读取数据的数据长度,配置与所述数据长度相等的数据缓存区作为第二缓存区。
58.本发明实施例中,所述测试模块203,用于根据所述数据模板对第二缓存区和目标缓存区中处于同一模板位置的数据按位依次进行数据比较。
59.对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
60.此外,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述方法的步骤。
61.本实施例中,所述ssd数据测试装置集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
62.此外,本发明实施例还提供了一种测试设备,该设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述方法的步骤。例如图1所示的步骤s11~s13。或者,所述处理器执行所述计算机程序时实现上述ssd数据测试装置实施例中各模块/单元的功能,例如图2所示的第一处理模块201、第二处理模块202以及测试模块203。
63.本发明实施例提供的ssd数据测试方法、装置、存储介质及测试设备,在对写入ssd设备的测试数据进行读取测试时,通过申请一段额外的缓存区以按照数据模板记录之前写入ssd的测试数据,然后根据数据模板对该填充有测试数据的缓存区和写有读取数据的目标缓存区中处于同一模板位置的数据按位进行一一校验,充分验证ssd数据的可靠性,并且出错时候,能够快速定位出错位置,提升测试效率。
64.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
65.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
66.此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
67.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献