一种基于电路板的测试矢量自动生成方法及装置制造方法及图纸

技术编号:15238771 阅读:160 留言:0更新日期:2017-04-29 04:01
本发明专利技术公开了一种基于电路板的测试矢量自动生成方法及装置,本发明专利技术通过输入的电路设计和输入的其他硬件设计被转换为统一的RTL(Register Transfer Level,寄存器传输级)设计,RTL设计进而转换为能被符号执行工具所能接受的具体的软件模型(LLVM Bytecode),进而利用符号执行工具并结合粒子群等人工智能算法进行测试矢量与测试路径的寻优与匹配,生成多样的测试矢量,从而有效解决了现有技术中不能能够基于符号执行来对电路板进行测试的问题。

【技术实现步骤摘要】

本专利技术涉及电路测试
,尤其涉及一种基于电路板的测试矢量自动生成方法及装置。
技术介绍
符号执行是一种重要的形式化和自动化的程序分析理论,是一种生成能够覆盖特定执行路径测试用例的方法模型,能够与程序的抽象和推理、模型检测等理论相互结合,在程序的自动化测试、缺陷检测、程序的验证与确认、正确性证明等方面有较好的应用前景。目前,符号执行已经广泛应用于软件测试用例生成并取得了良好的效果。对于硬件电路设计,本专利技术需要快速、有效地生成测试矢量来检测硬件设计和提高硬件设计的代码覆盖率。但是,目前并不能通过符号执行来对电路板进行测试,因此,如何能够基于符号执行来对电路板进行测试成为现在亟待需要解决的技术问题。
技术实现思路
鉴于上述的分析,本专利技术旨在提供一种基于电路板的测试矢量自动生成方法及装置,用解决现有技术中不能能够基于符号执行来对电路板进行测试的问题。为解决上述问题,本专利技术主要是通过以下技术方案实现的:本专利技术提供了一种基于电路板的测试矢量自动生成方法,该方法包括:将输入的电路设计和硬件设计转换为统一的RTL设计;将RTL设计转换为能被符号执行工具的软件模型;通过符号执行工具并结合人工智能算法进行测试矢量与测试路径的寻优与匹配,生成测试矢量。进一步地,该方法还包括:将生成的测试矢量结合RTL设计,应用硬件设计仿真软件进行仿真,生成对应的测试矢量覆盖率报告,对测试矢量进行初步评估。进一步地,将生成的测试矢量结合RTL设计,应用硬件设计仿真软件进行仿真,具体包括:将符号执行生成的测试矢量来驱动仿真软件,通过调用Modelsim引擎实现仿真,计算测试矢量可达的覆盖率。进一步地,还包括:当生成的测试矢量不满足覆盖率要求,则通过粒子群等人工智能算法进行参数寻优或手动修改参数以满足覆盖率要求,粒子群算法包括:粒子群算法实现步骤如下:利用符号执行方法产生的初始化测试向量;利用粒子群算法将测试向量随机生成粒子初始群体;根据测试向量,计算被测电路中所有故障的适应值,选择其中适应值最大的一个故障作为目标故障。并将能激起该故障的向量都加到一个集合E中;初始化粒子群;计算粒子群中每个测试向量所对应的适应值;最优位置的设定;根据粒子群算法进化方程生成下一代粒子;计算测试向量所对应的适应值;每个测试向量所对应的适应值与所经历的最好位置的适应值进行比较,将二者中较大的一个作为当前的最好位置;把每个测试向量所对应的适应值与所经历的全局最好位置的适应值进行比较,将二者中较大的一个作为当前的全局最好位置;如未达到预设最大代,则转回第(g)步;否则生成最优向量,进入下一步;将所有被检测到的故障从故障表中删除;判断故障表是否为空(即检查是否故障表中的所有故障都已被检测到),若为空,则算法结束;否则,返回第(b)步。当生成的测试向量满足要求,测试矢量被转换为对应符合IEEE1445标准的文件,并应用到硬件上进行仿真,通过对激励、输入输出管脚等的检测,进一步评估生成的测试矢量。进一步地,将输入的电路设计和硬件设计转换为统一的RTL设计,具体包括:通过VHDL转换工具将输入的电路设计和硬件设计转换为统一的基于VHDL语言的RTL设计。另一方面,本专利技术还提供了一种基于电路板的测试矢量自动生成装置,该装置包括:转换单元,用于将输入的电路设计和硬件设计转换为统一的RTL设计,将RTL设计转换为能被符号执行工具的软件模型;处理单元,用于通过符号执行工具并结合人工智能算法进行测试矢量与测试路径的寻优与匹配,生成测试矢量。进一步地,该装置还包括:仿真单元,用于将生成的测试矢量结合RTL设计,应用硬件设计仿真软件进行仿真,生成对应的测试矢量覆盖率报告,对测试矢量进行初步评估。进一步地,所述仿真单元还用于,将符号执行生成的测试矢量来驱动仿真软件,通过调用Modelsim引擎实现仿真,计算测试矢量可达的覆盖率。进一步地,所述仿真单元还用于,当生成的测试矢量不满足覆盖率要求,则通过人工智能算法进行参数寻优或手动修改参数以满足覆盖率要求;当生成的测试向量满足要求,测试矢量被转换为对应符合IEEE1445标准的文件,并应用到硬件上进行仿真,通过对激励、输入输出管脚等的检测,进一步评估生成的测试矢量。进一步地,所述转换单元还用于,通过VHDL转换工具将输入的电路设计和硬件设计转换为统一的基于VHDL语言的RTL设计。本专利技术有益效果如下:本专利技术通过输入的电路设计(Protel网表文件)和输入的其他硬件设计被转换为统一的RTL(RegisterTransferLevel,寄存器传输级)设计,RTL设计进而转换为能被符号执行工具所能接受的具体的软件模型(LLVMBytecode),进而利用符号执行工具并结合粒子群等人工智能算法进行测试矢量与测试路径的寻优与匹配,生成多样的测试矢量,从而有效解决了现有技术中不能能够基于符号执行来对电路板进行测试的问题。本专利技术的其他特征和优点将在随后的说明书中阐述,并且部分的从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。附图说明图1是本专利技术实施例的一种基于电路板的测试矢量自动生成方法的流程示意图;图2是本专利技术实施例粒子群算法流程示意图;图3是本专利技术实施例将设计输入统一转化成VerilogHDL示意图;图4是本专利技术实施例Verilog代码转换关系图;图5是本专利技术实施例Verilog编辑界面图;图6是本专利技术实施例传统静态编译器的阶段示意图;图7是本专利技术实施例LLVM的三个阶段设计示意图;图8是本专利技术实施例模型转换界面示意图;图9是本专利技术实施例生成驱动函数示意图;图10是本专利技术实施例覆盖率报告示意图;图11是本专利技术实施例软件部署示意图;图12是根据本专利技术实施例的一种基于电路板的测试矢量自动生成装置的结构示意图。具体实施方式下面结合附图来具体描述本专利技术的优选实施例,其中,附图构成本申请一部分,并与本专利技术的实施例一起用于阐释本专利技术的原理。为了清楚和简化目的,当其可能使本专利技术的主题模糊不清时,将省略本文所描述的器件中已知功能和结构的详细具体说明。本专利技术提供了一种基于电路板的测试矢量自动生成方法及装置,本专利技术通过输入的电路设计(Protel网表文件)和输入的其他硬件设计被转换为统一的RTL设计,RTL设计进而转换为能被符号执行工具所能接受的具体的软件模型(LLVMBytecode),进而利用符号执行工具并结合粒子群等人工智能算法进行测试矢量与测试路径的寻优与匹配,生成多样的测试矢量。以下结合附图以及几个实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不限定本专利技术。方法实施例本专利技术实施例提供了一种基于电路板的测试矢量自动生成方法,参见图1,该方法包括:将输入的电路设计和硬件设计转换为统一的RTL设计;将RTL设计转换为能被符号执行工具的软件模型;通过符号执行工具并结合人工智能算法进行测试矢量与测试路径的寻优与匹配,生成测试矢量。也就是说,本专利技术通过输入的电路设计(Protel网表文件)和输入的其他硬件设计被转换为统一的RTL(RegisterTransferLevel,寄存器传输级)设计,RTL设计进而转换为能被符号执行本文档来自技高网...

【技术保护点】
一种基于电路板的测试矢量自动生成方法,其特征在于,包括:将输入的电路设计和硬件设计转换为统一的RTL设计;将RTL设计转换为能被符号执行工具的软件模型;通过符号执行工具并结合人工智能算法进行测试矢量与测试路径的寻优与匹配,生成测试矢量。

【技术特征摘要】
1.一种基于电路板的测试矢量自动生成方法,其特征在于,包括:将输入的电路设计和硬件设计转换为统一的RTL设计;将RTL设计转换为能被符号执行工具的软件模型;通过符号执行工具并结合人工智能算法进行测试矢量与测试路径的寻优与匹配,生成测试矢量。2.根据权利要求1所述的方法,其特征在于,还包括:将生成的测试矢量结合RTL设计,应用硬件设计仿真软件进行仿真,生成对应的测试矢量覆盖率报告,对测试矢量进行初步评估。3.根据权利要求2所述的方法,其特征在于,将生成的测试矢量结合RTL设计,应用硬件设计仿真软件进行仿真,具体包括:将符号执行生成的测试矢量来驱动仿真软件,通过调用Modelsim引擎实现仿真,计算测试矢量可达的覆盖率。4.根据权利要求2所述的方法,其特征在于,还包括:当生成的测试矢量不满足覆盖率要求,则通过人工智能算法进行参数寻优或手动修改参数以满足覆盖率要求;当生成的测试向量满足要求,测试矢量被转换为对应符合IEEE1445标准的文件,并应用到硬件上进行仿真,通过对激励、输入输出管脚等的检测,进一步评估生成的测试矢量。5.根据权利要求1所述的方法,其特征在于,将输入的电路设计和硬件设计转换为统一的RTL设计,具体包括:通过VHDL转换工具将输入的电路设计和硬件设计转换为统一的基于VHDL...

【专利技术属性】
技术研发人员:牟书男潘国庆田志昊
申请(专利权)人:北京航天测控技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1