一种FPGA单粒子翻转防护方法技术

技术编号:9596665 阅读:171 留言:0更新日期:2014-01-23 02:11
一种FPGA单粒子翻转防护方法,采用状态机的方式对FPGA的逻辑状态进行控制,所述的状态机包括一个空闲状态和N个逻辑状态,所述的N个逻辑状态依次转换,每一个逻辑状态都对应FPGA中设定的一个逻辑状态;FPGA上电或者复位完成后,状态机初始处于空闲状态;当设定的FPGA所要跳转的逻辑状态的触发条件不满足时,状态机控制FPGA保持当前的逻辑状态,当设定的FPGA所要跳转的逻辑状态的触发条件满足时,状态机控制FPGA进入对应的逻辑状态;当发生单粒子故障导致FPGA跳转至无效状态或者非设定的下一个逻辑状态时,状态机控制FPGA复位并返回初始状态,等待对下一次触发条件进行判断并对FPGA的逻辑状态进行控制。

【技术实现步骤摘要】
【专利摘要】一种FPGA单粒子翻转防护方法,采用状态机的方式对FPGA的逻辑状态进行控制,所述的状态机包括一个空闲状态和N个逻辑状态,所述的N个逻辑状态依次转换,每一个逻辑状态都对应FPGA中设定的一个逻辑状态;FPGA上电或者复位完成后,状态机初始处于空闲状态;当设定的FPGA所要跳转的逻辑状态的触发条件不满足时,状态机控制FPGA保持当前的逻辑状态,当设定的FPGA所要跳转的逻辑状态的触发条件满足时,状态机控制FPGA进入对应的逻辑状态;当发生单粒子故障导致FPGA跳转至无效状态或者非设定的下一个逻辑状态时,状态机控制FPGA复位并返回初始状态,等待对下一次触发条件进行判断并对FPGA的逻辑状态进行控制。【专利说明】—种FPGA单粒子翻转防护方法
本专利技术涉及一种FPGA单粒子翻转防护方法。
技术介绍
目前,在星载电子产品中大量采用了FPGA设计。由于FPGA会受到空间辐射环境影响引起单粒子翻转(SEU),导致逻辑错误,造成产品功能失效。因此,在选择空间应用的FPGA时,需要采用抗辐射加固的FPGA芯片。但由于国外对我国的抗辐射加固FPGA芯片实施禁运,在星载电子产品设计中需要采取相应的抗辐射加固设计措施来提高FPGA的抗单粒子翻转能力。现有的设计往往通过FPGA内部逻辑的三模冗余和动态刷新重配置技术提高FPGA的抗单粒子翻转能力,由此带来FPGA规模的大幅度增加和硬件设计复杂度的大幅提高,功耗、重量、成本等也相应的大幅提闻。
技术实现思路
本专利技术的技术解决问题是:克服现有技术的不足,提供了一种FPGA单粒子翻转防护方法,通过状态机的复位接口设计,增强了 FPGA空间应用的抗辐射能力,提高了星载电子产品中FPGA空间应用的可靠性,可以很好地克服单粒子翻转对星载电子产品的影响问题。本专利技术的技术解决方案是:一种FPGA单粒子翻转防护方法,采用状态机的方式对FPGA的逻辑状态进行控制,所述的状态机包括一个空闲状态和N个逻辑状态,所述的N个逻辑状态依次转换,每一个逻辑状态都对应FPGA中设定的一个逻辑状态;FPGA上电或者复位完成后,状态机初始处于空闲状态;当设定的FPGA所要跳转的逻辑状态的触发条件不满足时,状态机控制FPGA保持当前的逻辑状态,当设定的FPGA所要跳转的逻辑状态的触发条件满足时,状态机控制FPGA进入对应的逻辑状态;当发生单粒子故障导致FPGA跳转至无效状态或者非设定的下一个逻辑状态时,通过状态机复位接口使FPGA返回初始状态,等待对下一次触发条件进行判断并对FPGA的逻辑状态进行控制。本专利技术与现有技术相比的优点在于:(I)本专利技术方法无需采用FPGA寄存器的三模冗余设计,减少了同等复杂度逻辑设计的FPGA资源使用量,能够优化FPGA布局布线结果,提高了 FPGA的评估频率;(2)本专利技术方法配合FPGA内部的状态机复位接口,主动定期对FPGA内部的状态机进行复位初始化,将SEU引起的状态机混乱恢复至初始态,保证FPGA的逻辑功能;(3)本专利技术方法能够在FPGA不重新上电或者重新复位的情况下,恢复由SEU单粒子翻转引起的FPGA状态机逻辑转换错误,而FPGA其他逻辑功能不受影响;(4)本专利技术方法部分弥补了 FPGA元器件抗SEU指标不足情况下的卫星应用。【专利附图】【附图说明】图1为本专利技术方法的流程图;图2为本专利技术无SEU情况下的状态机切换流程图;图3为本专利技术发生SEU情况下的状态机切换流程图。【具体实施方式】本专利技术方法主要从以下三个方面进行设计:(I) FPGA代码设计时采用安全状态机的防护设计;(2) FPGA设计时增加状态机复位接口设计;(3)配合FPGA逻辑设计,每次FPGA设计逻辑启动前,操作状态机复位接口重新初始化状态机;状态机包括一个空闲状态和N个逻辑状态。空闲状态主要负责完成FPGA内部逻辑的初始状态设置;其他N个逻辑状态和FPGA实现的逻辑功能以及硬件电路的设计相关,每一个逻辑状态都对应FPGA中设定的一个逻辑状态,FPGA在该状态下需要进行的不同操作,如FPGA对外输出一个脉冲信号或者启动一个定时器工作等;这N个逻辑状态与FPGA具体应用相关。具体工作过程为:FPGA复位完成后,状态机处于初始空闲(IDLE)状态;当状态机转换条件满足时,转入某一个状态等待下一个触发条件;当状态机转换条件满足时,依次进行FPGA的状态转换,按照FPGA设计逻辑完成预定功能后回到初始空闲(IDLE)状态,完成一次完整的FPGA逻辑功能,等待FPGA启动下一次工作时序。当状态机的转换受到SEU影响造成状态机死锁,则将FPGA内部的状态机逻辑恢复至初始状态(例如通过软件复位的方式),等待FPGA启动下一次工作时序。如图1所示,本专利技术方法的完整工作过程如下:(I) FPGA上电或者复位完成后,状态机处于初始空闲(IDLE)状态;(2) FPGA停留在初始状态等待外部输入的状态机转换触发条件,当状态机转换条件满足时,FPGA逻辑转入状态I ;当SEU故障导致状态机非预期跳转至无效状态时,通过安全状态机设计安全返回至初始状态;当SEU故障导致状态机非预期跳转至状态M时,状态机依靠复位安全返回至初始状态;(3)根据外部状态机转换触发条件,依次进行FPGA的状态转换后,状态机进入状态M;(4)FPGA停留在逻辑状态M,等待外部输入的状态机转换触发条件;当状态机转换条件满足时,FPGA逻辑转入状态N ;当SEU故障导致状态机非预期跳转至无效状态时,通过安全状态机设计安全返回至初始状态;(5)FPGA停留在逻辑状态N,等待外部输入的状态机转换触发条件;当状态N的状态机转换条件满足时,FPGA逻辑正常回到初始状态,完成一次完整的状态转换;当SEU故障导致状态机非预期跳转至无效状态时,通过安全状态机设计安全返回至初始状态;(6) FPGA等待启动下一次工作时序,并重复上述过程。如图2所示,本专利技术中状态机在未发生SEU单粒子翻转情况下的工作过程如下:(I) FPGA上电或者复位完成后,状态机处于初始空闲(IDLE)状态;(2)启动FPGA逻辑工作前,通过复位将FPGA进行初始化操作;(3) FPGA停留在初始状态等待外部输入的状态机转换触发条件;当状态机转换条件满足时,FPGA逻辑转入状态I ;(4)FPGA停留在逻辑状态I,等待外部输入的状态机转换触发条件;当状态I的状态机转换条件满足时,FPGA逻辑转入状态2 ;(5)根据外部状态机转换触发条件,依次进行FPGA的状态转换,按照FPGA设计逻辑完成预定功能后回到初始空闲IDLE状态,完成一次完整的FPGA逻辑功能;(6) FPGA等待启动下一次工作时序,并重复上述过程。如图3所示,本专利技术中状态机在发生SEU单粒子翻转情况下的工作过程如下:(I) FPGA上电或者复位完成后,状态机处于初始空闲(IDLE)状态;(2) FPGA停留在初始状态等待外部输入的状态机转换触发条件;当状态机转换条件满足时,FPGA逻辑转入状态I ;(3)当发生SEU单粒子翻转时,FPGA状态机编码翻转成一种无效编码状态时,通过安全状态机编码设计,将FPGA状态直接返回至初始IDLE状态,结束本次FPGA逻辑操作,等待启动下一次FPGA逻辑操作;(4)当从FPGA上电或本文档来自技高网...

【技术保护点】
一种FPGA单粒子翻转防护方法,其特征在于:采用状态机的方式对FPGA的逻辑状态进行控制,所述的状态机包括一个空闲状态和N个逻辑状态,所述的N个逻辑状态依次转换,每一个逻辑状态都对应FPGA中设定的一个逻辑状态;FPGA上电或者复位完成后,状态机初始处于空闲状态;当设定的FPGA所要跳转的逻辑状态的触发条件不满足时,状态机控制FPGA保持当前的逻辑状态,当设定的FPGA所要跳转的逻辑状态的触发条件满足时,状态机控制FPGA进入对应的逻辑状态;当发生单粒子故障导致FPGA跳转至无效状态或者非设定的下一个逻辑状态时,通过状态机复位接口使FPGA返回初始状态,等待对下一次触发条件进行判断并对FPGA的逻辑状态进行控制。

【技术特征摘要】

【专利技术属性】
技术研发人员:胡洪凯施蕾田宇斌吴琨刘波任宪朝孙强程铭
申请(专利权)人:北京控制工程研究所
类型:发明
国别省市:

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

1