【技术实现步骤摘要】
一种基于等价模变异的仿真软件测试方法
[0001]本专利技术涉及软件测试领域,尤其涉及一种基于等价模变异的仿真软件测试方法。
技术介绍
[0002]在数位电路设计中,寄存器传输级(英语:register
‑
transfer level,RTL)是一种对同步数位电路的抽象模型,寄存器传输级抽象模型在诸如Verilog和VHDL的硬件描述语言中被用于创建对实际电路的高层次描述。在现代的数位设计中,寄存器传输级上的设计是最典型的工作流程。
[0003]仿真软件作为验证寄存器传输级代码的工具,其输出的波形图可以以一种直观的描述帮助开发人员了解整个模型的运行效果。这样可发人员就可以使用更小的代价定位抽象模型的可能的缺陷。因此保证仿真软件的可靠性与稳定性至关重要。
[0004]目前针对仿真软件的测试方法主要是应用模糊测试的用例生成类测试,其中具有代表性的是VeriSmith。其通过基于AST模糊生成方式生成随机的Verilog代码,并将其应用于综合工具或仿真软件的测试。
[0005]在芯片设计及 ...
【技术保护点】
【技术特征摘要】
1.一种基于等价模变异的仿真软件测试方法,其特征在于包括:对生成的测试用例进行可用性检查,并判断测试用例是否正常编译,根据路径覆盖收集测试用例的变量数值和时延,根据正常编译的比率生成图形化的预处理结果图;对每一个测试用例插入二分支选择片段;填充二分支选择片段的不执行分支生成新的变体程序;采用马尔可夫链蒙特卡罗法筛选出新变体中复杂度高的变体程序作为等效变体;采用等效模输入方法比较原始测试程序与等效变体之间的区别,从而发现仿真软件存在的缺陷。2.根据权利要求1所述的基于等价模变异的仿真软件测试方法,其特征在于:采用测试用例生成工具VeriSimth生成测试用例,将生成的测试用例放入测试用例池并进行静态规范化检查,使用仿真软件逐个编译测试用例从而检查测试用例的可用性,将测试用例的变量数值保存到维护用例池的表中。3.根据权利要求1所述的基于等价模变异的仿真软件测试方法,其特征在于:插入二分选择代码片段时:获取测试用例在预处理过程中变量信息表的所有变量值,随机选定一个程序点,根据变量信息表的变量信息选定一个变量,生成大于该变量的判别式,根据判别式合成具有矛盾谓词的二分支条件语句,在选定的程序点处插入合成...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。