一种FPGA断电状态精确恢复方法技术

技术编号:18165351 阅读:269 留言:0更新日期:2018-06-09 11:20
本发明专利技术提供一种FPGA断电状态精确恢复方法,该方法首先在FPGA外部添加储能及电压比较电路模块,然后为FPGA原数据处理功能划分状态,确定状态存储信息,之后将FPGA配置芯片分区,并在FPGA内部添加掉电检测及状态处理模块;当FPGA在数据处理过程中断电时,将当前状态存储信息写入配置芯片,在FPGA恢复供电时,从配置芯片中读取状态存储信息,恢复断电时状态。本发明专利技术方法利用储能和状态缓存来实现FPGA的断电状态恢复,与外扩非易失存储器的周期记录方式相比,可以获得更高的断电状态恢复精度,同时由于大幅减少了存储器访问次数,可有效延长芯片使用时间,增强了系统工作的可靠性。

An accurate recovery method for FPGA power failure

The invention provides an accurate recovery method of FPGA power failure state. The method first adds energy storage and voltage comparison circuit modules outside FPGA, then divides the state of the original data processing function of FPGA, determines the state storage information, then partition the FPGA configuration chip, and adds power detection and state processing module inside the FPGA; When the FPGA is interrupted in the process of data processing, the current state storage information is written to the configuration chip. When the power supply is restored to the FPGA, the state storage information is read from the configuration chip to restore the state of the power failure. The method uses energy storage and state cache to restore the power failure of FPGA. Compared with the cycle recording mode of non volatile memory, it can obtain a higher recovery precision of power failure. At the same time, the use time of the core can be prolonged and the system work can be enhanced because of the large reduction of the number of memory access. It depends on sex.

【技术实现步骤摘要】
一种FPGA断电状态精确恢复方法
本专利技术属于断电状态恢复方法
,涉及一种FPGA断电状态精确恢复方法。
技术介绍
现场可编程门阵列(FieldProgrammableGateArray,FPGA)集成度高、运行速度快,已广泛应用于航天、医疗等诸多领域。但由于FPGA在掉电后配置信息丢失,无法保存掉电时工作状态,其在大规模、长时间数据处理的应用上存在制约。以往的FPGA断电状态恢复方法多采用外扩非易失存储器的方式,FPGA周期性地将工作状态信息写入外扩存储器,在断电后恢复供电时根据写入存储器的最后数据恢复FPGA工作状态。这种方式虽然实现简单、且在一定程度上满足了特定的状态恢复需求,但受限于外扩非易失存储器的访问周期和读写寿命,系统设计存在断电状态恢复不精确、长时间工作可靠性差等缺点。
技术实现思路
(一)专利技术目的本专利技术的目的是:克服现有技术中的缺陷,提供一种FPGA断电状态精确恢复方法,提高FPGA断电状态恢复精确度,以及长时间工作可靠性。(二)技术方案为了解决上述技术问题,本专利技术提供一种FPGA断电状态精确恢复系统,其包括:储能及电压比较电路模块,设置在FPGA外部,用于判断FPGA的断电状态并为断电的FPGA短时间维持供电;掉电检测及状态处理模块,设置在FPGA内部,用于确定FPGA掉电判断结果的准确性,并将FPGA当前数据处理的阶段、子阶段和子阶段内关键状态数据进行整合缓存,在FPGA断电时将缓存数据写入外接的FPGA配置芯片,在FPGA上电时从FPGA配置芯片读取缓存数据,用于对FPGA进行状态恢复;原数据处理功能模块,用于将FPGA的关键状态数据进行整合,供掉电检测及状态处理模块读取。其中,所述储能及电压比较电路模块包括储能电容、瞬态抑制电路模块、防回流二极管和电压比较电路模块,防回流二极管一端连接电源的正极,瞬态抑制电路模块连接防回流二极管和电源的负极,储能电容与瞬态抑制电路模块并联,电压比较电路模块连接电源正极、防回流二极管另一端和掉电检测及状态处理模块,储能电容的两端连接FPGA;储能电容用于在断电后的短时间内维持供电;瞬态抑制电路模块用于对供电电压进行瞬态抑制;防回流二极管用于避免在断电后储能电容维持供电时电流回流,从而延长断电后FPGA的工作时间;电压比较电路模块由精确分压电阻和电压比较器构成,精确分压电阻用于将比较器两输入端的电压限定在器件允许的范围,同时可根据防回流二极管的正向压差对比较器两输入端电压差进行调整,避免掉电误判。其中,所述储能电容和FPGA之间还连接电压转换模块,用于将供给FPGA的电压转换为FPGA适用的电压值范围。其中,所述原数据处理功能模块包括输入缓存模块、数据处理模块和输出缓存模块,输入缓存模块接收数据输入,由数据处理模块对数据进行处理并确定状态存储信息,处理后的数据由输出缓存模块进行数据输出;数据处理模块连接掉电检测及状态处理模块,用于传输状态存储信息。其中,所述FPGA配置芯片在逻辑上分为两个区,分区一用于存储FPGA配置数据,分区二用于存储状态存储信息和状态有效标志,状态有效标志表明当前的状态存储信息是否有效。其中,所述掉电检测及状态处理模块包括主控状态机、掉电检测、状态缓存、校验、状态处理和配置芯片读写共6个子模块,其中主控状态机子模块用于根据上电和断电状态协调各模块工作;掉电检测子模块用于滤除干扰信号,保证掉电检测结果的准确性;状态缓存子模块用于对当前数据处理的阶段、子阶段和子阶段内关键状态数据进行整合缓存,并将缓存数据发送给校验子模块,同时接收校验结果并将该结果加入到原缓存数据中;校验子模块既可以对整合缓存的阶段、子阶段数据和关键状态数据进行校验,生成校验数据,也可以对从配置芯片读回的状态存储信息进行校验,确认数据的正确性;状态处理子模块在FPGA上电时负责控制配置芯片读写子模块从配置芯片中读取状态有效标志和状态存储信息,并根据有效标志和状态存储信息的校验情况确定是否进行状态恢复,在FPGA断电时负责从状态缓存子模块中读取状态存储信息,并根据当前数据处理的阶段判断是否将该信息和状态有效标志写入配置芯片;配置芯片读写子模块用于实现对FPGA配置芯片分区二的数据读写;在掉电检测及状态处理模块添加完成后,利用开发工具生成FPGA配置数据,并通过下载线将数据烧写到配置芯片的分区一空间中。本专利技术还提供一种FPGA断电状态精确恢复方法,其包括以下步骤:步骤1、在FPGA外部添加储能及电压比较电路模块;步骤2、为FPGA原数据处理功能划分状态,确定状态存储信息;步骤3、将FPGA配置芯片分区;步骤4、在FPGA内部添加掉电检测及状态处理模块;步骤5、FPGA数据处理过程中断电,将当前状态存储信息写入配置芯片;步骤6、FPGA恢复供电,从配置芯片中读取状态存储信息,恢复断电时状态。其中,所述步骤2中,FPGA原数据处理功能是除断电状态恢复功能外,FPGA内部原有的数据处理功能;确定状态存储信息,是将FPGA原数据处理功能划分为若干阶段,然后将每个阶段划分为若干子阶段,确定每个子阶段需要记录的关键状态数据,将这些关键状态数据和阶段、子阶段数据进行整合校验,并将已加入校验数据的整合信息确定为状态存储信息。其中,所述步骤5中,在FPGA断电时,电压比较电路模块输出反相,FPGA内部掉电检测子模块在滤除干扰后确认当前处于掉电状态,之后对当前缓存的状态存储信息进行判断;如果当前数据已经处理完成,则不进行配置芯片写操作,直接结束;如果当前数据未处理完成,则将带有校验数据的状态存储信息写入配置芯片的分区二空间,同时将配置芯片内的状态有效标志置为有效状态。其中,所述步骤6中,在恢复供电时,FPGA首先从配置芯片中读取状态有效标志和状态存储信息,如果状态有效标志为无效状态,则无需进行状态恢复,FPGA原数据处理功能模块直接工作;如果状态有效标志为有效状态,则对状态存储信息进行校验,如果校验结果正确,则进行状态恢复,即使用状态存储信息对数据处理状态进行恢复,之后将状态有效标志置为无效状态;如果校验结果错误,则不进行状态恢复,但仍需要将状态有效标志置为无效状态;在将状态有效标志置为无效后,原数据处理功能模块工作,直至断电。(三)有益效果上述技术方案所提供的FPGA断电状态精确恢复方法,首先在FPGA外部添加储能及电压比较电路模块,然后为FPGA原数据处理功能划分状态,确定状态存储信息,之后将FPGA配置芯片分区,并在FPGA内部添加掉电检测及状态处理模块;当FPGA在数据处理过程中断电时,将当前状态存储信息写入配置芯片,在FPGA恢复供电时,从配置芯片中读取状态存储信息,恢复断电时状态。本方法利用储能和状态缓存来实现FPGA的断电状态恢复,与外扩非易失存储器的周期记录方式相比,可以获得更高的断电状态恢复精度,同时由于大幅减少了存储器访问次数,可有效延长芯片使用时间,增强了系统工作的可靠性。该方法在实施过程中只需简单改动供电并将电压比较器输出引入FPGA,无需对FPGA硬件连接进行大幅改动,具有较强的实用价值。附图说明图1是本专利技术一种FPGA断电状态精确恢复系统连接关系示意图。图2是本专利技术一种FPGA断电状态精确恢复方法中掉电检测及状态处理模块运行流程图。具体实施方式本文档来自技高网...
一种FPGA断电状态精确恢复方法

【技术保护点】
一种FPGA断电状态精确恢复系统,其特征在于,包括:储能及电压比较电路模块,设置在FPGA外部,用于判断FPGA的断电状态并为断电的FPGA短时间维持供电;掉电检测及状态处理模块,设置在FPGA内部,用于确定FPGA掉电判断结果的准确性,并将FPGA当前数据处理的阶段、子阶段和子阶段内关键状态数据进行整合缓存,在FPGA断电时将缓存数据写入外接的FPGA配置芯片,在FPGA上电时从FPGA配置芯片读取缓存数据,用于对FPGA进行状态恢复;原数据处理功能模块,用于将FPGA的关键状态数据进行整合,供掉电检测及状态处理模块读取。

【技术特征摘要】
1.一种FPGA断电状态精确恢复系统,其特征在于,包括:储能及电压比较电路模块,设置在FPGA外部,用于判断FPGA的断电状态并为断电的FPGA短时间维持供电;掉电检测及状态处理模块,设置在FPGA内部,用于确定FPGA掉电判断结果的准确性,并将FPGA当前数据处理的阶段、子阶段和子阶段内关键状态数据进行整合缓存,在FPGA断电时将缓存数据写入外接的FPGA配置芯片,在FPGA上电时从FPGA配置芯片读取缓存数据,用于对FPGA进行状态恢复;原数据处理功能模块,用于将FPGA的关键状态数据进行整合,供掉电检测及状态处理模块读取。2.如权利要求1所述的FPGA断电状态精确恢复系统,其特征在于,所述储能及电压比较电路模块包括储能电容、瞬态抑制电路模块、防回流二极管和电压比较电路模块,防回流二极管一端连接电源的正极,瞬态抑制电路模块连接防回流二极管和电源的负极,储能电容与瞬态抑制电路模块并联,电压比较电路模块连接电源正极、防回流二极管另一端和掉电检测及状态处理模块,储能电容的两端连接FPGA;储能电容用于在断电后的短时间内维持供电;瞬态抑制电路模块用于对供电电压进行瞬态抑制;防回流二极管用于避免在断电后储能电容维持供电时电流回流,从而延长断电后FPGA的工作时间;电压比较电路模块由精确分压电阻和电压比较器构成,精确分压电阻用于将比较器两输入端的电压限定在器件允许的范围,同时可根据防回流二极管的正向压差对比较器两输入端电压差进行调整,避免掉电误判。3.如权利要求2所述的FPGA断电状态精确恢复系统,其特征在于,所述储能电容和FPGA之间还连接电压转换模块,用于将供给FPGA的电压转换为FPGA适用的电压值范围。4.如权利要求3所述的FPGA断电状态精确恢复系统,其特征在于,所述原数据处理功能模块包括输入缓存模块、数据处理模块和输出缓存模块,输入缓存模块接收数据输入,由数据处理模块对数据进行处理并确定状态存储信息,处理后的数据由输出缓存模块进行数据输出;数据处理模块连接掉电检测及状态处理模块,用于传输状态存储信息。5.如权利要求4所述的FPGA断电状态精确恢复系统,其特征在于,所述FPGA配置芯片在逻辑上分为两个区,分区一用于存储FPGA配置数据,分区二用于存储状态存储信息和状态有效标志,状态有效标志表明当前的状态存储信息是否有效。6.如权利要求5所述的FPGA断电状态精确恢复系统,其特征在于,所述掉电检测及状态处理模块包括主控状态机、掉电检测、状态缓存、校验、状态处理和配置芯片读写共6个子模块,其中主控状态机子模块用于根据上电和断电状态协调各模块工作;掉电检测子模块用于滤除干扰信号,保证掉电检测结果的准确性;状态缓存子模块用于对当前数据处理的阶段、子阶段和子阶段内关键状态数据进行整合缓存,并将缓存数据发送给校验子模块,同时接收校验结果并将该结果加入...

【专利技术属性】
技术研发人员:全浩军张海英所玉君崔建飞
申请(专利权)人:天津津航计算技术研究所
类型:发明
国别省市:天津,12

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

1