本申请涉及fpga,尤其是一种基于忆阻器实现检查回滚的高可靠性fpga。
背景技术:
1、fpga(field programmable gate array,现场可编程逻辑门阵列)是一种硬件可编程逻辑器件,被广泛应用于各种领域的系统中。随着技术的不断进步,现代社会对于各种系统的可靠性要求越来越高,尤其是在诸如航天航空、医疗设备、能源、交通、金融系统之类的对稳定性要求很高的领域。但是对于目前主流的基于sram的fpga来说,当系统发生故障时会丢失信息,影响了系统的可靠性和稳定性。
技术实现思路
1、本申请针对上述问题及技术需求,提出了一种基于忆阻器实现检查回滚的高可靠性fpga,本申请的技术方案如下:
2、一种基于忆阻器实现检查回滚的高可靠性fpga,该高可靠性fpga内部包括至少一个基于可变阻值的忆阻器制作形成的非易失性时序元件,高可靠性fpga内部还包括检查回滚控制器;在高可靠性fpga的运行过程中:
3、当高可靠性fpga的当前运行状态无故障时,检测回滚控制器控制每个非易失性时序元件利用内置的忆阻器的电阻状态更新存储非易失性时序元件当前工作状态;
4、当高可靠性fpga的当前运行状态存在故障时,检测回滚控制器控制每个非易失性时序元件利用内置的忆阻器的电阻状态恢复到非易失性时序元件最近的一个工作状态,驱动高可靠性fpga恢复到最近一个无故障的运行状态。
5、其进一步的技术方案为,在高可靠性fpga的运行过程中,当确定高可靠性fpga的当前运行状态无故障时,检测回滚控制器按照预定的检查频率控制每个非易失性时序元件利用内置的忆阻器的电阻状态更新存储非易失性时序元件当前工作状态。
6、其进一步的技术方案为,检测回滚控制器采用的检查频率在高可靠性fpga的运行过程中动态可变,且检查频率与高可靠性fpga的运行状态、运行环境和可靠性要求中的至少一种相关。
7、其进一步的技术方案为,在高可靠性fpga的运行过程中:
8、在确定高可靠性fpga的运行状态出现故障后的预定时段内临时提高检查频率,并在确定高可靠性fpga的运行状态无故障的持续时长达到预定时长后恢复检查频率;
9、和/或,在确定高可靠性fpga的运行环境变恶劣时,提高检查频率;
10、和/或,在确定高可靠性fpga的可靠性要求变高时,提高检查频率。
11、其进一步的技术方案为,在高可靠性fpga的运行过程中:
12、暂停高可靠性fpga执行的用户功能,并对高可靠性fpga的当前运行状态进行故障测试,完成故障测试后恢复执行用户功能,检测回滚控制器根据故障测试结果确定高可靠性fpga的当前运行状态是否存在故障;
13、在高可靠性fpga执行的用户功能的同时,并行对高可靠性fpga的当前运行状态进行故障测试,检测回滚控制器根据故障测试结果确定高可靠性fpga的当前运行状态是否存在故障。
14、其进一步的技术方案为,检查回滚控制器通过控制线网络连接并控制各个非易失性时序元件内置的忆阻器的电阻状态;
15、当控制线网络中每个非易失性时序元件与检查回滚控制器之间共享相同的控制线时,检查回滚控制器同时读取各个非易失性时序元件内置的忆阻器的电阻状态,且检查回滚控制器同时配置各个非易失性时序元件内置的忆阻器的电阻状态;
16、当控制线网络中存在至少两个非易失性时序元件与检查回滚控制器之间的控制线相互独立时,控制线网络形成层次化结构,且检查回滚控制器按照层次化顺序依序读取各个非易失性时序元件内置的忆阻器的电阻状态,且检查回滚控制器按照层次化顺序依序配置各个非易失性时序元件内置的忆阻器的电阻状态。
17、其进一步的技术方案为,检查回滚控制器的检查总耗时与回滚总耗时均与控制线网络的结构相关,且检查总耗时与回滚总耗时可调;
18、其中,检查总耗时是检测回滚控制器控制所有非易失性时序元件完成更新存储当前工作状态的耗时;
19、回滚总耗时是检测回滚控制器控制所有非易失性时序元件完成恢复到最近一个工作状态的耗时。
20、其进一步的技术方案为,检查回滚控制器以及控制线网络均利用高可靠性fpga内置的可编程资源实现;且在高可靠性fpga的设计过程中,利用可编程资源形成的控制线网络的电路结构与电路设计需求相匹配。
21、其进一步的技术方案为,电路设计需求包括控制线网络的布线面积、检查回滚控制器的检查总耗时、检查回滚控制器的回滚总耗时、检查回滚控制器读取各个非易失性时序元件内置的忆阻器的电阻状态的最大瞬间电流、检查回滚控制器配置各个非易失性时序元件内置的忆阻器的电阻状态的最大瞬间电流中的至少一种。
22、其进一步的技术方案为,高可靠性fpga内部包括的非易失性时序元件包括非易失性dff、非易失性bram和提供配置位的时序元件,提供配置位的时序元件包括非易失性分布式随机存储器和非易失性移位寄存器,且非易失性bram、非易失性分布式随机存储器和非易失性移位寄存器分别基于非易失性dff构建得到;
23、对于非易失性dff,检查回滚控制器控制非易失性dff的数据保存信号set处于有效电平状态,并在忆阻器的端部施加编程电压phv,以控制非易失性dff利用内置的忆阻器的电阻状态存储非易失性dff的输出端的当前工作状态;检查回滚控制器控制非易失性dff的数据恢复信号res配置处于有效电平状态且置位信号处于非有效电平状态,将非易失性dff内置的忆阻器的电阻状态以恢复到非易失性dff的最近一个运行状态。
24、本申请的有益技术效果是:
25、本申请公开了一种基于忆阻器实现检查回滚的高可靠性fpga,该高可靠性fpga对硬件电路结构和软件工作流程进行优化设计,将时序元件升级为基于可变阻值的忆阻器制作形成的非易失性时序元件,并在fpga内部增加检查回滚控制器对各个非易失性时序元件进行控制,非易失性时序元件内置的忆阻器一方面作为功能元件,另一方面又用于存储信息。每个非易失性时序元件的工作状态直接存储到内置的忆阻器中,存储成忆阻器的电阻状态,从而可以实现非易失性的状态保存和状态恢复的功能,且这种做法现有cmos工艺兼容,可以提高fpga规模和速度,保证该高可靠性fpga的可靠性和运行稳定性,且能够在大数据量处理场景下有较好应用。
1.一种基于忆阻器实现检查回滚的高可靠性fpga,其特征在于,所述高可靠性fpga内部包括至少一个基于可变阻值的忆阻器制作形成的非易失性时序元件,所述高可靠性fpga内部还包括检查回滚控制器;在所述高可靠性fpga的运行过程中:
2.根据权利要求1所述的高可靠性fpga,其特征在于,
3.根据权利要求2所述的高可靠性fpga,其特征在于,
4.根据权利要求3所述的高可靠性fpga,其特征在于,在所述高可靠性fpga的运行过程中:
5.根据权利要求1所述的高可靠性fpga,其特征在于,在所述高可靠性fpga的运行过程中:
6.根据权利要求1所述的高可靠性fpga,其特征在于,
7.根据权利要求6所述的高可靠性fpga,其特征在于,所述检查回滚控制器的检查总耗时与回滚总耗时均与所述控制线网络的结构相关,且检查总耗时与回滚总耗时可调;
8.根据权利要求6所述的高可靠性fpga,其特征在于,所述检查回滚控制器以及所述控制线网络均利用所述高可靠性fpga内置的可编程资源实现;且在所述高可靠性fpga的设计过程中,利用可编程资源形成的控制线网络的电路结构与电路设计需求相匹配。
9.根据权利要求6所述的高可靠性fpga,其特征在于,电路设计需求包括控制线网络的布线面积、所述检查回滚控制器的检查总耗时、所述检查回滚控制器的回滚总耗时、所述检查回滚控制器读取各个非易失性时序元件内置的忆阻器的电阻状态的最大瞬间电流、所述检查回滚控制器配置各个非易失性时序元件内置的忆阻器的电阻状态的最大瞬间电流中的至少一种。
10.根据权利要求1所述的高可靠性fpga,其特征在于,所述高可靠性fpga内部包括的非易失性时序元件包括非易失性dff、非易失性bram和提供配置位的时序元件,提供配置位的时序元件包括非易失性分布式随机存储器和非易失性移位寄存器,且非易失性bram、非易失性分布式随机存储器和非易失性移位寄存器分别基于非易失性dff构建得到;