固件模块的测试方法、装置、设备及存储介质与流程
- 国知局
- 2024-07-31 19:46:08
本申请涉及固件测试,尤其涉及一种固件模块的测试方法、装置、设备及存储介质。
背景技术:
1、存储芯片的固件模块开发初步设计完成以后,固件工程师需要对该固件模块进行白盒测试,以暴露固件模块在设计中存在的问题。在进行白盒测试的时候,需要人为制造各种错误以模仿产品在实际工作过程中可能遇到的问题,然后观察固件模块处理这些异常事件是否符合预期,从而及时修正固件模块。
2、通常在测试过程中,固件工程师需要通过烘烤、过炉等手段注入错误,但是通过烘烤过炉等手段会出现数据出现的错误不可控,无法精准的在数据中注入错误。
技术实现思路
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、本申请在读取数据的时,通过主动修改原始测试数据中的部分数据内容,使得数据发生测试人员想要的错误,相对于通过烘烤、过炉等手段注入错误的方案来说,本申请的方案实现了精准的在原始测试数据中注入错误,提升固件模块的测试准确性,从而提高固件模块开发效率。
技术特征:1.一种固件模块的测试方法,用于测试固件模块,其特征在于,包括步骤:
2.根据权利要求1所述的固件模块的测试方法,其特征在于,所述接收闪存模块中的原始测试数据,将原始测试数据根据特定错误指令进行特定错误修改,得到待测试数据的步骤包括:
3.根据权利要求2所述的固件模块的测试方法,其特征在于,所述第一翻转模式包括随机翻转模式和连续翻转模式;
4.根据权利要求2所述的固件模块的测试方法,其特征在于,在根据所述特定错误指令在所述原始测试数据中设定第一主动错误数据的起始位置和第一主动错误数据的结束位置的步骤之前还包括:
5.根据权利要求2所述的固件模块的测试方法,其特征在于,根据所述特定错误指令在所述原始测试数据中设定第一主动错误数据的起始位置和第一主动错误数据的结束位置的步骤之前还包括:
6.根据权利要求2所述的固件模块的测试方法,其特征在于,在将所述测试后数据与原始测试数据进行对比确定所述测试后数据与原始测试数据是否一致并生成对比结果,基于对比结果判断所述固件模块的错误处理能力是否合格的步骤之后还包括:
7.根据权利要求1所述的固件模块的测试方法,其特征在于,所述固件模块包括闪存转换模块和错误检查和纠正模块,所述错误检查和纠正模块连接在所述闪存转换模块和闪存模块之间;
8.一种闪存装置,其特征在于,所述闪存装置包括接口、固件模块、错误注入模块和多个闪存模块,所述接口、所述固件模块、所述错误注入模块和多个所述闪存模块依次连接;
9.一种电子设备,其特征在于,所述电子设备包括:
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任意一项所述的固件模块的测试方法。
技术总结本申请公开了一种固件模块的测试方法、装置、设备及存储介质,包括步骤:接收闪存模块中的原始测试数据,将原始测试数据根据特定错误指令进行特定错误修改,得到待测试数据;对所述待测试数据进行纠错处理,得到测试后数据;将所述测试后数据与原始测试数据进行对比,确定所述测试后数据与原始测试数据是否一致并生成对比结果,基于对比结果判断所述固件模块的错误处理能力是否合格。通过上述步骤,实现了精准的在数据中注入错误,提升固件模块的测试准确性,从而提高固件模块开发效率。技术研发人员:卢颖福受保护的技术使用者:深圳市时创意电子有限公司技术研发日:技术公布日:2024/3/24本文地址:https://www.jishuxx.com/zhuanli/20240731/183955.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表