本发明专利技术设计了一个由三个基本CPU核组成的三模冗余容错计算机核,即用三个相同的基本CPU核组合成一个具备容错功能的计算机核,采用三模冗余的方式,在其中任一个基本CPU核出现故障时继续保持计算机运算的正确性,并自主恢复故障。本发明专利技术采用自动刷新技术把正确的基本CPU核对发生故障的基本CPU核进行刷新,消除故障,恢复正常工作状态。本发明专利技术设计的IP核是一个独立的容错计算机核,其形式为软核,功能为对单粒子效应造成的单点故障进行自动检测、自动获取正确结果、以及进行故障自主恢复。本发明专利技术解决了一个采用三模冗余技术实现容错计算机IP核的设计问题,可用于FPGA应用开发和集成电路设计。
【技术实现步骤摘要】
本专利技术涉及一种具备故障自主恢复功能的三模冗余容错计算机IP核(Intellectual Property Core,知识产权核)的设计方法,适合应用于航天航空等高可靠性要求的现场可编程逻辑(FPGA,Field Programable Gate Array)开发和相关的集成电路(AS 1C)设计。
技术介绍
知识产权核(Intellectual Property Core,简称IP核)是指一种专门为完成某种特定功能而设计的的逻辑块或数据块,主要用于集成电路(ASIC)和现场可编程逻辑(FPGA)的设计。集成电路是多个IP核和相关逻辑电路的组合。在FPGA开发应用中IP核是一种不可缺少的组成部分。目前国际上主流集成电路供应商都拥有大量的IP核作为其核心资产。IP核代表了集成电路行业的最高技术水平。IP核的形式有三种,即硬核、固核和软核。三模冗余(TMR)是用于容错计算机的一种技术。它已经成功应用到一些要求高可靠性的行业,如航空航天、导弹、尖端武器等。常用的实现方法是用相同的三个模块同时工作,通过三中取二的表决确定结果。有关三模冗余的技术已经有单项专利技术。FPGA是一种可编程的集成电路芯片,由于其运行速度快和灵活性好,越来越多地应用到航天等高技术行业。由于航天器是在距离地面几百公里以上的宇宙空间工作,宇宙中有各种射线对航天器的穿透,这种射线会引起FPGA中的与非门产生“单粒子翻转”效应,从而导致产生错误的输出结果。目前,国内航天研究所已经应用三模冗余技术来避免“单粒子翻转”故障。但是还有以下问题没有解决:(1)当出现“单粒子翻转”现象时,故障设备只能用复位或重启的方式消除故障,这种方式会引起数据丢失和时间损失。(2)CPU是一个最关键的模块,目前还没有CPU核的软核能实现高效和实用的冗余解决方案。
技术实现思路
本专利技术设计了一个由三个基本CPU核组成的三模冗余容错计算机核,即用三个相同的基本CPU核组合成一个具备容错功能的计算机核,采用三模冗余的方式,在其中任一个基本CPU核出现故障时继续保持计算机运算的正确性,并自主恢复故障。本专利技术采用自动刷新技术把正确的基本CPU核对故障基本CPU核进行刷新,消除故障,恢复正常工作状态。设计的IP核是一个独立的容错计算机核,其形式为软核,功能为对单粒子效应造成的单点故障进行自动检测、自动获取正确结果、以及进行故障自主恢复。本专利技术解决了一个容错计算机IP核的设计问题,可用于FPGA应用开发和集成电路设计。本专利技术的设计由五个模块组成。CPU核1模块、CPU核2模块和CPU核3模块是三个具备相同功能的基本CPU核,由热备份的方式完成基本运算功能。表决器模块的功能是对来自三个CPU核的结果进行三中取二的表决,并把正确结果输出,如果其中一个模块出现了不同的结果,则把该模块信息反馈到刷新控制器模块。刷新控制器模块的功能是对三个基本CPU核进行管理,由四个子模块组成。配置状态机子模块的功能是完成系统状态机的转换,包括睡眠、上电、刷新等。地址译码子模块的功能是实现刷新过程中地址数据总线的切换,保证刷新的数据代码正确写入FPGA存储器。状态机检测子模块的功能完成对FPGA加载状态的检测,发现出错后发送错误标志。配置控制子模块的功能是完成FPGA配置程序的写入,包括地址配置和刷新。本专利技术与现有技术比较有一下优点:(1)采用IP核软核的方式实现了一个三模冗余的CPU容错解决方案,简单而实用,资源占用合理,使用方便。(2)采用代码数据刷新的方式对由单粒子翻转造成的故障进行自主恢复,保证了容错计算机运算的正确性。(3)只要单个基本CPU核代码数据不出现永久性故障,系统会始终保持正确运行。【附图说明】图1总体原理图图2刷新控制器原理图图3表决器逻辑不意图 图4刷新控制逻辑示意图【具体实施方式】为使本专利技术的实现和优点更加清楚,下面结合附图做详细的说明。在此,本专利技术的示意性实施方式及其说明用于解释其专利技术原理和方法,但不作为对本专利技术的限定。本专利技术实施的案例提供了三模冗余CPU核的工作原理,基于三个基本CPU的热备份工作,三种取二的表决原则,刷新控制逻辑实施的流程和算法。以下具体展示本专利技术的实现过程。附图1是本专利技术的总体原理图。三个基本CPU核工作在热备份状态,计算结果通过表决器以三中取二的方式输出结果。刷新控制器完成用正确CPU核模块对故障CPU核模块进行刷新。表决器的工作过程如附图3所示:如果CPU核1、CPU核2、CPU核3的结果一致,则输出CPU核1的结果。如果CPU核1结果与CPU核2结果不一致,CPU核1结果与CPU核3结果不一致,CPU核2结果与CPU核3结果一致,则说明CPU核1出现了故障,输出CPU核2的结果,同时启动刷新控制器用CPU核2的代码数据刷新CPU核1。如果CPU核1结果与CPU核2结果不一致,CPU核1结果与CPU核3结果一致,CPU核2结果与CPU核3结果一致,则说明CPU核2出现了故障,输出CPU核1的结果,同时启动刷新控制器用CPU核1的代码数据刷新CPU核2。如果CPU核1结果与CPU核2结果一致,CPU核1结果与CPU核3结果不一致,CPU核2结果与CPU核3结果不一致,则说明CPU核3出现了故障,输出CPU核1的结果,同时启动刷新控制器用CPU核1的代码数据刷新CPU核3。当出现故障状态时启动刷新控制器刷新程序,附图4是刷新逻辑原理图。当CPU核1故障时,刷新控制器读取CPU核2代码,执行写入操作,覆盖CPU核1代码,然后启动RESET ο当CPU核2故障时,刷新控制器读取CPU核1代码,执行写入操作,覆盖CPU核2代码,然后启动RESET。当CPU核3故障时,刷新控制器读取CPU核1代码,执行写入操作,覆盖CPU核3代码,然后启动RESET。本专利技术的实施是基于XILINX公司Virtex-5型号FPGA上实现的,基本CPU核采用了基于MCS-51指令系统的商用8051CPU核。经过相关仿真验证工具的测试和验证,本专利技术设计的三模冗余容错计算机核是可以实现的。本专利技术未详细说明部分属本领域技术人员公知常识。【主权项】1.一种故障自主恢复三模冗余容错计算机IP核的设计方法,其特征在于: 三个基本CPU核组成的三模冗余容错计算机核,即用三个相同的CPU核组合成一个具备容错功能的计算机核,采用三模冗余的方式,在其中任一个基本CPU核出现故障时继续保持计算机运算的正确性,同时采用自动刷新技术把正确的基本CPU核对故障基本CPU核进行刷新,消除故障,恢复正常工作状态。2.根据权利要求1所述的自主恢复三模冗余容错计算机核组成模块,其特征为: 由五个模块组成,CPU核1模块、CPU核2模块和CPU核3模块是三个具备相同功能的基本CPU核,由热备份的方式完成基本运算功能。表决器模块的功能是对来自三个CPU核的结果进行三中取二的表决,并把正确结果输出,如果出现一个不同的结果,则把信息反馈到刷新控制器模块。刷新控制器模块的功能是对三个基本CPU核进行管理,由四个子模块组成。配置状态机子模块的功能是完成系统状态机的转换,包括睡眠、上电、刷新等。地址译码子模块的功能是实现刷新过程中地址数据总线的切换,保证刷新的数据代码正确写入FPGA存储器。状态机检测子模本文档来自技高网...
【技术保护点】
一种故障自主恢复三模冗余容错计算机IP核的设计方法,其特征在于:三个基本CPU核组成的三模冗余容错计算机核,即用三个相同的CPU核组合成一个具备容错功能的计算机核,采用三模冗余的方式,在其中任一个基本CPU核出现故障时继续保持计算机运算的正确性,同时采用自动刷新技术把正确的基本CPU核对故障基本CPU核进行刷新,消除故障,恢复正常工作状态。
【技术特征摘要】
【专利技术属性】
技术研发人员:杜和青,
申请(专利权)人:康宇星科技北京有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。