一种基于掩码文件的FPGA精确故障注入系统技术方案

技术编号:10172125 阅读:175 留言:0更新日期:2014-07-02 12:59
一种基于掩码文件的FPGA精确故障注入系统及方法,包括掩码文件产生模块、故障注入过程控制模块和精确故障注入模块三个模块。掩码文件产生模块根据FPGA片上可编程资源与配置码流之间的映射关系生成掩码文件,并将掩码文件提供给故障注入过程控制模块;故障注入过程控制模块对接收到的掩码文件按数据帧为单位进行分析处理,再将掩码数据帧提供给精确故障注入模块;精确故障注入模块根据接收到的掩码数据帧,生成包括故障信息的单帧码流并注入FPGA中,故障注入过程控制模块采集故障注入结果并上传给上位机。本发明专利技术根据FPGA片上可编程资源进行精确注入,可以显著提高评估FPGA单粒子效应所需效率,有更强的针对性,从而有利于FPGA抗辐射加固技术的研究。

【技术实现步骤摘要】
一种基于掩码文件的FPGA精确故障注入系统
本专利技术涉及一种基于掩码文件的FPGA精确故障注入系统及方法,主要应用与FPGA片上可编程资源对空间单粒子效应造成故障的敏感度验证,属于FPGA故障注入领域。
技术介绍
FPGA由于使用灵活,成本低廉,功能强大,在空间环境中的应用越来越多,但是FPGA在空间辐射环境中使用时,空间中的高能粒子会穿透FPGA的器件内部,造成单粒子效应。单粒子效应会对FPGA系统的运行产生影响,造成错误,甚至使其完全无法使用。通常情况下,使用辐射实验的方法在地面模拟单粒子效应来验证FPGA对单粒子效应的敏感程度,但是辐射实验的方法成本高周期长,因此较为方便价廉的故障注入的方法用的越来越多。FPGA特有的可重复编程的能力,使故障注入的方法更加方便快捷。FPGA的可重复编程能力,是由于FPGA中有很多片上可编程资源,包括CLB、IOB、片上可编程互连等,通过使用配置码流配置片上可编程资源,FPGA可以被配置成各种电路,实现不同的功能。现有的针对FPGA的故障注入方法,是利用FPGA的可重复编程能力,翻转FPGA的配置码流中的一位,使用翻转后的码流重新配置FPGA,观察其是否出现错误。如果出现错误,证明FPGA对这一码位的翻转敏感,如果不出现错误,证明FPGA对这一码位的翻转不敏感。通过逐位翻转FPGA的配置码流,得出FPGA的故障率、静态翻转界面等表征FPGA对单粒子故障敏感程度的参数。目前现有的故障注入方法,采用的是逐位翻转码流的方法,只能得到FPGA的故障敏感度,得到的是笼统的统计结果,没有针对性,无法对单粒子效应对FPGA产生的影响进行深入分析。因此,为了使故障注入过程更有针对性,故障注入更有效率,得出的结果对研究单粒子效应的影响和应对单粒子效应的措施研究更有帮助,需要一种更加细致、精确的故障注入方法。
技术实现思路
本专利技术要解决的技术问题:克服现有技术的不足,提供了一种基于掩码文件的FPGA精确故障注入系统及方法,根据FPGA的片上可编程资源和配置码流的映射关系、实际测试需求得出掩码文件,使用掩码文件控制故障注入过程,进行精确故障注入,使故障注入可以针对FPGA的某一种或某一个片上可编程资源进行,从而实现对单粒子故障更精确,更有针对性,更有效率的分析。本专利技术通过以下技术方案实现一种基于掩码文件的FPGA精确故障注入系统,包括:掩码文件产生模块、故障注入过程控制模块、精确故障注入模块和结果处理模块;掩码文件产生模块根据FPGA片上可编程资源与配置码流之间的映射关系生成掩码文件,并将掩码文件提供给故障注入过程控制模块,故障注入过程控制模块对接收到的掩码文件按数据帧为单位进行分析处理,再将掩码数据帧提供给精确故障注入模块;精确故障注入模块根据接收到的掩码数据帧,生成包括故障信息的单帧码流并注入FPGA中,故障注入过程控制模块采集故障注入结果并上传给上位机。所述掩码文件是与FPGA故障注入所需的配置码流文件等长的二进制文件,整个文件由1、0组成;掩码文件的每一位与配置码流文件的每一位一一对应,掩码文件中的一位的值表征了配置码流文件的该位是否需要进行注入;掩码中一位的值为1,表示配置码流该位需要进行故障注入;反之,表示配置码流该位不需要进行故障注入。所述故障注入过程控制模块包括掩码文件分析模块、故障注入使能模块、故障注入终止模块和故障注入结果采集模块;掩码文件分析模块接收输入的掩码文件,每次读入一帧掩码,通过对该帧掩码进行分析,如果该帧掩码全为0,则表明该帧配置码流数据不需要进行故障注入,继续读取下一帧掩码文件进行分析;如果该帧掩码不全为0,表明该帧数据需要进行故障注入,则使能故障注入使能模块,将该帧掩码发送给精确故障注入模块;如果全部掩码文件均已分析完毕,则使能故障注入终止模块;故障注入结果采集模块采集精确故障注入模块返回的故障注入结果信息,当故障注入终止模块使能之后,故障注入结果采集模块将采集到的故障注入结果信息上传给上位机。所述精确故障注入模块包括异或模块和信息注入模块;异或模块将单帧配置码流文件和故障注入过程控制模块提供的一帧掩码数据进行按位进行异或计算,将异或计算后的单帧码流通过信息注入模块对FPGA进行故障注入。所述异或模块将单帧配置码流文件和故障注入过程控制模块提供的一帧掩码数据进行按位进行异或计算具体为:将所述一帧掩码数据的第一位与单帧配置码流文件的第一位进行异或,进行异或计算后的配置码流文件即为进行第一次故障注入所用的单帧码流;将所述一帧掩码数据的第二位与单帧配置码流文件的第二位进行异或,进行异或计算后的配置码流文件即为进行第二次故障注入所用的单帧码流;以此类推直到该帧掩码数据所有位均进行异或计算完毕;所述单帧配置码流文件是配置码流文件中与所述一帧掩码数据所对应的部分。一种基于掩码文件的FPGA精确故障注入方法,步骤如下:(1)根据FPGA片上可编程资源与配置码流之间的映射关系生成掩码文件;(2)对步骤(1)中掩码文件以数据帧为单位进行分析判断:读入一帧掩码文件,如果该帧掩码全为0,表明该帧配置码流不需要进行故障注入,重新读取下一帧掩码进行判断;如果该帧掩码不全为0,表明该帧配置码流需要进行故障注入,进行步骤(3);(3)根据所述不全为0的该帧掩码文件,在配置码流文件中提取与其对应的单帧配置码流;(4)将所述单帧配置码流按位依次与相应的掩码位进行异或操作,每进行一次异或操作,使用异或后的所述单帧配置码流重新配置FPGA,进行故障注入,并收集该位的故障注入结果;(5)判断整个掩码文件是否已经读取完毕,如果没有,返回步骤(2)继续读取下一帧掩码进行判断;如果读取完毕,故障注入结束,将故障注入结果上传给上位机。所述掩码文件是与FPGA故障注入所需的配置码流文件等长的二进制文件,整个文件由1、0组成;掩码文件的每一位与配置码流文件的每一位一一对应,掩码文件中的一位的值表征了配置码流文件的该位是否需要进行注入;掩码中一位的值为1,表示配置码流该位需要进行故障注入;反之,表示配置码流该位不需要进行故障注入。本专利技术相对现有技术的有益效果为:(1)本专利技术根据FPGA片上可编程资源情况对配置码流进行有选择的精确注入,需要分析的资源就进行故障注入,不需要分析的资源就不进行故障注入,可以显著提高对FPGA单粒子效应进行评估所需的效率;(2)本专利技术针对FPGA片上可编程资源进行精确故障注入,对比现有的逐位翻转或随机翻转的故障注入方法,在分析单粒子效应对FPGA的影响方面有更强的针对性;(3)本专利技术的结果分析是针对不同的FPGA片上可编程资源进行的,得到的敏感度结果更加精确直观,更有利于深入分析单粒子效应影响和研究缓解单粒子效应影响的措施,可以更方便、更有针对性地评估FPGA的抗辐照性能,从而有利于FPGA抗辐射加固技术的研究。附图说明图1为精确故障注入系统的结构原理图;图2为故障注入过程控制模块的结构原理图;图3为精确故障注入模块的结构原理图;图4为本专利技术方法流程图;具体实施方式如图1所示,本专利技术提供了一种基于掩码文件的FPGA精确故障注入系统,所谓精确故障注入过程与传统遍历式故障注入过程不同,精确故障注入并不对配置码流文件的每一位都进行故障注入并返回结果,而是根据掩码文件判断是否进本文档来自技高网
...
一种基于掩码文件的FPGA精确故障注入系统

【技术保护点】
一种基于掩码文件的FPGA精确故障注入系统,其特征在于包括:掩码文件产生模块、故障注入过程控制模块和精确故障注入模块;掩码文件产生模块根据FPGA片上可编程资源与配置码流之间的映射关系生成掩码文件,并将掩码文件提供给故障注入过程控制模块,故障注入过程控制模块对接收到的掩码文件按数据帧为单位进行分析处理,再将掩码数据帧提供给精确故障注入模块;精确故障注入模块根据接收到的掩码数据帧,生成包括故障信息的单帧码流并注入FPGA中,故障注入过程控制模块采集故障注入结果并上传给上位机。

【技术特征摘要】
1.一种基于掩码文件的FPGA精确故障注入系统,其特征在于包括:掩码文件产生模块、故障注入过程控制模块和精确故障注入模块;掩码文件产生模块根据FPGA片上可编程资源与配置码流之间的映射关系生成掩码文件,并将掩码文件提供给故障注入过程控制模块,故障注入过程控制模块对接收到的掩码文件按数据帧为单位进行分析处理,再将掩码数据帧提供给精确故障注入模块;精确故障注入模块根据接收到的掩码数据帧,生成包括故障信息的单帧码流并注入FPGA中,故障注入过程控制模块采集故障注入结果并上传给上位机;所述掩码文件是与FPGA故障注入所需的配置码流文件等长的二进制文件,整个文件由1、0组成;掩码文件的每一位与配置码流文件的每一位一一对应,掩码文件中的一位的值表征了配置码流文件的该位是否需要进行注入;掩码中一位的值为1,表示配置码流该位需要进行故障注入;反之,表示配置码流该位不需要进行故障注入;所述故障注入过程控制模块包括掩码文件分析模块、故障注入使能模块、故障注入终止模块和故障注入结果采集模块;掩码文件分析模块接收输入的掩码文件,每次读入一帧掩码,通过对该帧掩码进行分析,如果该帧掩码全为0,则表明该帧配置码流数据不需要进行故障注入,继续读取下一帧掩码文件进行分析;如果该帧掩码不全为0,表明该帧数据需要进行故障...

【专利技术属性】
技术研发人员:周婧陈雷王硕赵元富文治平李学武陈勋孙雷陶娟娟
申请(专利权)人:北京时代民芯科技有限公司北京微电子技术研究所
类型:发明
国别省市:北京;11

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

1