[发明专利]基于代码突变的FPGA在线故障注入方法在审
申请号: | 201910722052.2 | 申请日: | 2019-08-06 |
公开(公告)号: | CN110413468A | 公开(公告)日: | 2019-11-05 |
发明(设计)人: | 董剑;任潇;左德承;孙日辉;张展;舒燕君;罗丹彦 | 申请(专利权)人: | 哈尔滨工业大学 |
主分类号: | G06F11/22 | 分类号: | G06F11/22;G06F11/263 |
代理公司: | 哈尔滨市松花江专利商标事务所 23109 | 代理人: | 时起磊 |
地址: | 150001 黑龙*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 目标系统 在线故障 注入位置 突变 计算机应用技术 故障注入单元 参数寄存器 扫描代码 数学建模 文件配置 注入单元 自由选择 宿主机 运行时 解析 写入 集合 激活 衡量 | ||
1.基于代码突变的FPGA在线故障注入方法,其特征在于包括以下步骤:
步骤一:首先扫描代码,对VHDL系统进行数学建模;
步骤二:根据用户选择的故障注入位置,注入文件配置,对信号进行修改,生成注入单元;
步骤三:根据用户的选择生成故障注入参数;
步骤四:对步骤三中生成的故障注入参数进行解析,并写入参数寄存器中;
步骤五:通过宿主机的控制,在FPGA目标系统运行时完成故障注入单元的激活。
2.根据权利要求1所述的基于代码突变的FPGA在线故障注入方法,其特征在于:所述步骤二中故障注入位置通过目标系统的语法树实现。
3.根据权利要求2所述的基于代码突变的FPGA在线故障注入方法,其特征在于:所述步骤一的详细步骤为:
步骤一一:对VHDL代码文件进行代码规范;
步骤一二:读取VHDL代码中的关键字列表,使用基础关键字进行代码分段;
步骤一三:判定是否扫描完所有关键字,若是,结束,如否,则执行步骤一四;
步骤一四:读取关键字在相关段进行代码匹配,然后将信息和匹配的位置写入数据结构,执行步骤一三。
4.根据权利要求3所述的基于代码突变的FPGA在线故障注入方法,其特征在于:所述步骤一四的具体步骤为:首先从上至下根据相关关键字将代码分为输入输出定义段,器件定义段和行为描述段,然后在输入输出定义段和行为描述段前进行代码匹配,得到所有的信号名称,之后在行为描述段进行匹配时,先匹配相关信号名称,然后根据此行匹配到的是赋值符号还是映射,确定本信号的赋值类型,最后将信息和匹配的位置写入数据结构。
5.根据权利要求1所述的基于代码突变的FPGA在线故障注入方法,其特征在于:在所述步骤二前还包括故障注入位置推荐,所述故障注入位置推荐基于故障传播网络结构实现。
6.根据权利要求5所述的基于代码突变的FPGA在线故障注入方法,其特征在于:所述故障传播网络结构包括单一文件内的信号连接和多文件之间的信号连接。
7.根据权利要求6所述的基于代码突变的FPGA在线故障注入方法,其特征在于:所述单一文件内的信号连接的具体步骤如下:首先定位当前文件的注入信号位置,然后通过查找数据结构,在数据结构存储信号位置的数据上遍历注入单元,之后返回源代码文件,在相关的故障注入位置上,匹配赋值信号的名称,在赋值信号和被赋值信号之间建立联系。
8.根据权利要求6所述的基于代码突变的FPGA在线故障注入方法,其特征在于:所述多文件之间的信号连接的具体步骤如下:对于多文件控制依赖,首先遍历代码文件,根据在代码文件中匹配的关键字区分进程位置,之后遍历信号列表,在每个进程之内匹配可注入信号的名称,并与驱动信号相关联,对于多文件数据依赖,首先查找数据结构,然后查找器件表,使用文件之间的实体-器件依赖图,在器件表的端口映射声明中匹配本文件的注入信号名称和器件文件的注入信号名称。
9.根据权利要求8所述的基于代码突变的FPGA在线故障注入方法,其特征在于:所述进程位置包括开始位置和结束位置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学,未经哈尔滨工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910722052.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种服务器BIOS的调试方法、装置、设备及介质
- 下一篇:一种故障检测系统