一种星载设备中FPGA单粒子翻转故障注入方法技术

技术编号:29672725 阅读:47 留言:0更新日期:2021-08-13 21:54
本发明专利技术提供一种星载设备的单粒子翻转故障注入方法,包括PC机外部注入起始位置,使用串口命令打开电源,待确认单板正常上电后,向两个单板同时发送故障注入开始指令,并持续监测两个单板状态,星载设备DSP从遥控指令中得到当前注入帧号,星载设备DSP在读取完帧数据后,将计算出需要打翻的Bit翻转,而对于参考单板不进行Bit翻转,之后针对本帧数据计算CRC,并对刷新器状态进行监管,在无异常情况下,将配置数据和CRC校验一同写入ICAP刷新器接口,控制刷新器进行数据注入。

【技术实现步骤摘要】
一种星载设备中FPGA单粒子翻转故障注入方法
本专利技术涉及星载设备中FPGA领域,更具体地是涉及对使用SRAM型FPGA的星载设备进行单粒子翻转故障注入的方法。
技术介绍
目前,宇航级FPGA器件的主流技术有基于反熔丝和基于SRAM两种。基于反熔丝的FPGA采用击穿绝缘介质的方法进行编程,抗辐照能力强,但成本高、性能弱且灵活性不够;SRAM型FPGA具有可重复配置的优点,凭借其高性能、低成本、开发快捷等优点,在星载设备中应用越来越广泛。但此种类型FPGA由于SRAM自身的结构特性,导致其对单粒子效应十分敏感,易被单粒子打翻,从而对内部电路功能造成影响。SRAM型FPGA应用于星载设备时,需配合刷新技术和三模容错手段,来保证其运行的可靠性。星载设备一般使用DSP作为逻辑控制和运算单元,负责核心的计算和控制任务,SRAM型FPGA作为协处理设备,实现数据采集、预处理和后处理。当SRAM型FPGA被单粒子打翻时,设备可能出现无法预知的故障。为评估单粒子效应可能对SRAM型FPGA产生的影响,通常采用故障注入的方式。故障注入的原理是对FPGA配置文件中的帧数据进行0/1翻转来实现配置存储器内容的人为翻转,从而模拟FPGA的单粒子翻转效应。为减少对外部辅助硬件的依赖,通常采用FPGA内部自带的ICAP接口实现故障注入。ICAP是FPGA提供的内部端口,可对SRAM型FPGA的配置存储器内容进行回读或重配置,能够方便地实现配置存储器内容的单比特翻转。现有方法采用ICAP接口实现故障注入时,往往还需专用的PC机软件以及外围辅助电路,需要购买额外的设备,使得故障注入系统的复杂性增加,提高了故障注入实验的门坎。中国专利公开CN108073497A公开了一种用于星载计算机可靠性验证的故障注入方法,包括:通过卫星轨道参数计算单粒子翻转率,生成单粒子翻转故障注入表;建立星载计算机模型和故障注入器,并按照故障注入表中的内容,对星载计算机模型进行故障注入;建立故障观察器,对故障注入后的各模块的状态和输出进行跟踪;将故障注入表、故障观察器所跟踪的各模块值及相应运行结果保存于日志文件中。该方法的注入过程可控性强,星载计算机模型和故障注入模型双线程并行,可通过终端方便地控制和监测仿真进程。CN108073497A的技术方案中通过仿真,实现模拟故障注入,无法完全模拟真实硬件条件,部分与硬件相关故障可能无法通过仿真注入来实现,并且所针对对象为星载计算机CPU,无法应用于SRAM型FPGA。中国专利公开CN108646106A公开了一种具有单粒子翻转故障注入功能的微型ICAP控制器,使用PicoBlaze作为ICAP控制器的主控制单元,接收来自重构系统的功能请求或故障注入请求指令,然后控制ICAP端口与帧故障检测单元进行工作;ICAP控制器的结构:由RAM、PicoBlaze控制器、ICAP端口、帧检测单元组成;PicoBlaze控制重配置和故障注入的整个过程;RAM受PicoBlaze控制器的控制,用于存储配置帧数据;帧检测单元用于对配置过程中的帧数据进行校验;在配置过程中,PicoBlaze接收重构系统的功能指令,解析之后完成相应功能。ICAP控制器故障注入功能不需要额外的资源,不影响重构系统的运行。该方案中使用PicoBlaze软核处理器作为注入控制,是使用FPGA的逻辑和资源搭建的一个软核CPU系统,同时ICAP注入器由FPGA本身提供,二者在进行SRAM型FPGA故障注入时,本身存在注入故障后,无法正常运行的可能,该方法未考虑在PicoBlaze软核和ICAP接口本身存在故障时,如何恢复注入流程。
技术实现思路
为解决上述技术问题,本专利技术提出了一种星载设备的单粒子翻转故障注入设备,包括:监测设备、程控电源、待测的星载设备注错单板和用作参考的星载设备参考单板;所述监测设备负责接收和监测星载设备的测试,监测设备分别与星载设备注错单板和星载设备参考单板连接;监测设备控制程控电源给星载设备注错单板和星载设备参考单板供电;星载设备注错单板和星载设备参考单板采用共用的通用硬件架构,所述的通用硬件架构采用反熔丝FPGA作为启动管理核心,所述反熔丝FPGA直接与晶振、PROM和抗辐照Flash相连,控制DSP和SRAM型FPGA执行程序加载;所述反熔丝FPGA为待测的所述SRAM型FPGA和DSP提供时钟,控制待测的所述SRAM型FPGA的配置刷新操作;所述星载设备注错单板和星载设备参考单板都通过EMIF总线与所述DSP连接。进一步的,所述通用硬件架构中的反熔丝FPGA通过地址译码的方式开放Flash接口,DSP通过反熔丝FPGA读写所述抗辐照Flash中存储的数据和程序;所述的星载设备参考单板功能及程序与星载设备注错单板相同,同样按照监测设备指令对FPGA进行配置信息注入,但不进行逐比特翻转。进一步的,待测的所述SRAM型FPGA内部封装ICAP接口,提供ICAP接口访问、刷新数据的时序控制;所述的SRAM型FPGA内部配置两个刷新器,两个刷新器互为备份。进一步的,所述刷新器设置对DSP写入配置数据的校验,向所述DSP写入配置数据时同步写入数据CRC32校验,只有当配置数据和CRC32校验均匹配,刷新器才进行注入,SRAM型FPGA分别为两个刷新器配置状态寄存器。进一步的,监测设备对所述星载设备注错单板和星载设备参考单板进行监测,判断星载设备注错单板的遥测信息中断时间达到预定时间,或在遥测信息中检测出异常,则监测设备记录异常日志信息,并控制程控电源同时对两个单板进行重启,从上次出现故障的下一个比特位置继续进行故障注入。本专利技术还提供一种星载设备的单粒子翻转故障注入方法,包括以下步骤步骤1,所述DSP在高优先级任务中接收和响应监测设备遥控指令,依据该遥控指令开启或停止注入流程;步骤2,监测设备启动后,依据外部输入获取注入起始位置,打开电源,待确认单板正常上电后,向所述星载设备注错单板和星载设备参考单板同时发送故障注入开始指令,并持续监测两个单板状态;步骤3,若监测设备发现两个单板中的任一个在预定时间内未更新,或显示单板发生注入故障,则控制两个单板重启,并依据日志记录,使两个单板从上一次出错位置的下一个Bit开始继续注入;步骤4,在收到监测设备故障注入开始指令后,所述DSP从遥控指令中得到当前注入帧号,依据当前注入FPGA标识和当前注入帧号计算出当前帧在Flash中的位置,读取该帧的内容;步骤5,所述DSP在读取完帧数据后,从固定偏移位置读取EDAC校验,对数据使用EDAC校验算法进行修正,并依据当前注入帧号和当前比特编号计算出需要打翻的Bit位置,转入步骤6;步骤6,对于星载设备注错单板,将计算出需要打翻的Bit翻转,而对于星载设备参考单板不进行Bit翻转,之后针对本帧数据计算CRC,并对刷新器状态进行监管,在无异常的情况下,将配置数据和CRC校验一同写入ICAP刷新器接口,控制刷新器进行数据注入;进一步的,步骤4还包括:检测当前注入帧号是否合法以及当本文档来自技高网
...

【技术保护点】
1.一种星载设备的单粒子翻转故障注入设备,其特征在于,所述的星载设备的单粒子翻转故障注入设备包括:监测设备、程控电源、待测的星载设备注错单板和用作参考的星载设备参考单板;所述监测设备负责接收和监测星载设备的测试,监测设备分别与星载设备注错单板和星载设备参考单板连接;监测设备控制程控电源给星载设备注错单板和星载设备参考单板供电;星载设备注错单板和星载设备参考单板采用共用的通用硬件架构,所述的通用硬件架构采用反熔丝FPGA作为启动管理核心,所述反熔丝FPGA直接与晶振、PROM和抗辐照Flash相连,控制DSP和SRAM型FPGA执行程序加载;所述反熔丝FPGA为待测的所述SRAM型FPGA和DSP提供时钟,控制待测的所述SRAM型FPGA的配置刷新操作;所述星载设备注错单板和星载设备参考单板都通过EMIF总线与所述DSP连接。/n

【技术特征摘要】
1.一种星载设备的单粒子翻转故障注入设备,其特征在于,所述的星载设备的单粒子翻转故障注入设备包括:监测设备、程控电源、待测的星载设备注错单板和用作参考的星载设备参考单板;所述监测设备负责接收和监测星载设备的测试,监测设备分别与星载设备注错单板和星载设备参考单板连接;监测设备控制程控电源给星载设备注错单板和星载设备参考单板供电;星载设备注错单板和星载设备参考单板采用共用的通用硬件架构,所述的通用硬件架构采用反熔丝FPGA作为启动管理核心,所述反熔丝FPGA直接与晶振、PROM和抗辐照Flash相连,控制DSP和SRAM型FPGA执行程序加载;所述反熔丝FPGA为待测的所述SRAM型FPGA和DSP提供时钟,控制待测的所述SRAM型FPGA的配置刷新操作;所述星载设备注错单板和星载设备参考单板都通过EMIF总线与所述DSP连接。


2.如权利要求1所述的单粒子翻转故障注入设备,其特征在于,所述通用硬件架构中的反熔丝FPGA通过地址译码的方式开放Flash接口,DSP通过反熔丝FPGA读写所述抗辐照Flash中存储的数据和程序;所述的星载设备参考单板功能及程序与星载设备注错单板相同,同样按照监测设备指令对FPGA进行配置信息注入,但不进行逐比特翻转。


3.如权利要求2所述的单粒子翻转故障注入设备,其特征在于,待测的所述SRAM型FPGA内部封装ICAP接口,提供ICAP接口访问、刷新数据的时序控制;所述的SRAM型FPGA内部配置两个刷新器,两个刷新器互为备份。


4.如权利要求3所述的单粒子翻转故障注入设备,其特征在于,所述刷新器设置对DSP写入配置数据的校验,向所述DSP写入配置数据时同步写入数据CRC32校验,只有当配置数据和CRC32校验均匹配,刷新器才进行注入,SRAM型FPGA分别为两个刷新器配置状态寄存器。


5.如权利要求1所述的单粒子翻转故障注入设备,其特征在于,监测设备对所述星载设备注错单板和星载设备参考单板进行监测,判断星载设备注错单板的遥测信息中断时间达到预定时间,或在遥测信息中检测出异常,则监测设备记录异常日志信息,并控制程控电源同时对两个单板进行重启,从上次出现故障的下一个比特位置继续进行故障注入。


6.一种星载设备的单粒子翻转故障注入方法,使用权利要求1-5中任一项所述的星载设备的单...

【专利技术属性】
技术研发人员:刘哲周海洋王飞雪黄龙鲁祖坤李柏渝邱杨王晓琴杨威刘强
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:湖南;43

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

1