一种基于fpga的故障恢复方法

文档序号:6635580阅读:498来源:国知局
一种基于fpga的故障恢复方法
【专利摘要】本发明公开了一种基于FPGA的故障恢复方法,可实现在上电后对FPGA的工作状态进行监测,若逻辑未成功加载或逻辑崩溃等现象出现,使用硬件看门狗对逻辑进行复位;若FPGA上嵌入的软件加载不成功或者软件崩溃时,通过逻辑看门狗对软件进行复位,以实现模块的故障恢复,且不影响对FPGA的烧写、配置等操作。该方法适用于需要故障恢复的情况,提高工作的可靠性,且具有通用功能,可以适用于各种基于Xilinx FPGA的故障恢复情况。
【专利说明】—种基于FPGA的故障恢复方法

【技术领域】
[0001]本发明涉及一种基于FPGA的故障恢复方法。

【背景技术】
[0002]Xilinx公司的FPGA芯片是基于SRAM型工艺的挥发性器件,电路功能依靠存储在SRAM型配置寄存器中数据实现。FPGA芯片上电后必须从配置FLASH中读取配置信息之后才能正常工作。
[0003]FPGA的配置过程包括5个阶段:初始化,清空配置存储器,加载配置数据,CRC校验,START-UP,该配置过程的上电时序如图1所示,在芯片上电或者FPGA的PR0G_B信号为低脉冲时,会清空配置寄存器,即会重新从配置FLASH中读取配置信息。PR0G_B的最短脉冲时间由Ttok时间参数决定,当该信号有效(低电平)时,芯片处于复位状态。
[0004]现有的FPGA没有配置工作状态监测系统,如果出现异常现象无法及时复位,同时也影响了对FPGA的烧写、配置等操作。


【发明内容】

[0005]本发明的目的是提供一种基于FPGA的故障恢复方法,对FPGA的工作状态进行监测,可对出现的异常现象进行复位,且不影响对FPGA的烧写、配置等操作。
[0006]为了实现以上目的,本发明所采用的技术方案是:一种基于FPGA的故障恢复方法,包括如下步骤:
[0007](I)上电后,FPGA从配置Flash中读取配置信息,加载构成逻辑看门狗的逻辑;
[0008](2)加载完成后逻辑运行,对硬件看门狗进行喂狗操作;
[0009](3)若逻辑故障或逻辑未成功加载,且持续设定时间未完成喂狗操作,硬件看门狗输出复位脉冲到FPGA,FPGA重新加载直至逻辑加载成功;
[0010](4)逻辑加载成功后,FPGA加载嵌入的软件,软件启动后对逻辑看门狗进行喂狗操作,若持续设定时间未进行喂狗操作,则逻辑看门狗对软件进行复位。
[0011]若硬件看门狗上有外部复位信号产生,则FPGA重新加载逻辑。
[0012]配置Flash和硬件看门狗均与FPGA的PR0G_B相连。
[0013]所述FPGA还接有DEBUG信号用于在调试过程中烧入bit文件。
[0014]本发明基于FPGA的故障恢复方法可实现在上电后,对FPGA的工作状态进行监测,若逻辑未成功加载或逻辑崩溃等现象出现,使用硬件看门狗对逻辑进行复位;若FPGA上嵌入的软件加载不成功或者软件崩溃时,通过逻辑看门狗对软件进行复位,以实现模块的故障恢复,且不影响对FPGA的烧写、配置等操作。该方法适用于需要故障恢复的情况,提高工作的可靠性,且具有通用功能,可以适用于各种基于Xilinx FPGA的故障恢复情况。

【专利附图】

【附图说明】
[0015]图1为FPGA芯片的上电配置时序;
[0016]图2为本发明硬件电路原理示意图;
[0017]图3为故障恢复方法流程图。

【具体实施方式】
[0018]下面结合附图及具体的实施例对本发明进行进一步介绍。
[0019]如图1所示,在Xilinx FPGA的PR0G_B信号为低时,清空配置寄存器,FPGA从配置Flash中重新加载程序。
[0020]如图2所示,该故障恢复系统主要由硬件电路单元和逻辑看门狗单元组成。硬件电路单元主要包括硬件看门狗芯片、Xilinx FPGA和配置Flash ;逻辑看门狗单元主要由在PC机上编写的逻辑进行编码来实现,编译生成适于芯片加载格式的软件或逻辑。配置Flash和硬件看门狗均与Xilinx FPGA的PR0G_B相连。
[0021]另外,若不接DEBUG信号,会出现调试过程中无法烧入bit文件的问题,但可正常烧录mcs文件。为解决此问题,引入DEBUG信号,当处于调试状态,烧入bit文件时,该信号置为1,工作状态下,该信号为O。SYS_RST为外部复位信号,此信号效果为FPGA复位外围电路的同时,自身重新加载程序。
[0022]如图3所示,本发明提供了一种基于FPGA的故障恢复方法,包括如下步骤:
[0023](I)上电后,首先FPGA从配置Flash中读取配置信息,加载构成逻辑看门狗的逻辑;
[0024](2)等待FPGA加载完成后,此时逻辑运行,逻辑开始对硬件看门狗进行喂狗操作(WDI);
[0025](3)若逻辑故障(例如出现逻辑崩溃现象)或逻辑未成功加载,且持续设定时间未完成喂狗操作(FPGA逻辑出现问题),硬件看门狗芯片输出复位脉冲到FPGA,此时FPGA将重新加载直至逻辑加载成功;
[0026](4)逻辑加载成功后,FPGA开始加载嵌入的软件,软件启动后对逻辑看门狗进行喂狗操作,若持续设定时间未进行喂狗操作(软件出现问题),则逻辑看门狗对软件进行复位,从而实现故障恢复。
[0027]另外,在进行上述操作的同时检测外部复位信号,若有外部复位信号产生,则FPGA复位外围电路的同时,自身重新加载逻辑。
[0028]以上实施例仅用于帮助理解本发明的核心思想,不能以此限制本发明,对于本领域的技术人员,凡是依据本发明的思想,对本发明进行修改或者等同替换,在【具体实施方式】及应用范围上所做的任何改动,均应包含在本发明的保护范围之内。
【权利要求】
1.一种基于FPGA的故障恢复方法,其特征在于,包括如下步骤: (1)上电后,FPGA从配置Flash中读取配置信息,加载构成逻辑看门狗的逻辑; (2)加载完成后逻辑运行,对硬件看门狗进行喂狗操作; (3)若逻辑故障或逻辑未成功加载,且持续设定时间未完成喂狗操作,硬件看门狗输出复位脉冲到FPGA,FPGA重新加载直至逻辑加载成功; (4)逻辑加载成功后,FPGA加载嵌入的软件,软件启动后对逻辑看门狗进行喂狗操作,若持续设定时间未进行喂狗操作,则逻辑看门狗对软件进行复位。
2.根据权利要求1所述的基于FPGA的故障恢复方法,其特征在于:若硬件看门狗上有外部复位信号产生,则FPGA重新加载逻辑。
3.根据权利要求1或2所述的基于FPGA的故障恢复方法,其特征在于:配置Flash和硬件看门狗均与FPGA的PROG_B相连。
4.根据权利要求3所述的基于FPGA的故障恢复方法,其特征在于:所述FPGA还接有DEBUG信号用于在调试过程中烧入bit文件。
【文档编号】G06F11/07GK104331341SQ201410682741
【公开日】2015年2月4日 申请日期:2014年11月24日 优先权日:2014年11月24日
【发明者】董欢, 徐恺 申请人:中国航空工业集团公司洛阳电光设备研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1