CN105607698B - 一种星载计算机***方案设计方法 - Google Patents
一种星载计算机***方案设计方法 Download PDFInfo
- Publication number
- CN105607698B CN105607698B CN201510956742.6A CN201510956742A CN105607698B CN 105607698 B CN105607698 B CN 105607698B CN 201510956742 A CN201510956742 A CN 201510956742A CN 105607698 B CN105607698 B CN 105607698B
- Authority
- CN
- China
- Prior art keywords
- dsp
- fpga
- computer system
- satellite
- error
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
一种高可靠性星载计算机***方案设计方法,本发明涉及高可靠性星载计算机***方案设计方法。本发明的目的是为了解决星载计算机可靠性低,处理能力低的问题。具体过程为:一、对外部设备进行检测,如果工作状态正常,则正常运行,进行二;如果工作状态不正常,则进行五;二、得到处理后的卫星的状态信息;三、DSP将处理后的卫星的状态信息进行汉明码编码后发送给FPGA;四、如果DSP中有一个或多个出错,则进行六;如果DSP不出错,则星载计算机***正常运行;五、PGA启动备份的外部设备接替出错外部设备的工作;六、FPGA启动备份的DSP_D接管出错的DSP的工作,并控制出错的DSP重新上电启动。本发明应用于航天领域。
Description
技术领域
本发明涉及星载计算机***方案设计方法。
背景技术
随着科学技术的发展,世界上各个国家都纷纷开始了对空间的探索,抢夺空间资源,从上世纪末开始,我国在空间技术和航天领域已经取得了许多伟大的成就,我国的航天事业已经进入发展的快车道。随着空间技术的发展,空间任务越来越复杂,越来越多样化,对航天器的“大脑”——星载计算机提出了更高的要求。
航天器处在空间环境中时,会受到来自空间的各种辐射的影响,主要表现为总剂量效应和单粒子效应。总剂量效应由长时间的辐射积累所以引起的,减小总剂量效应的方法一般是采用防辐射保护罩或者减少芯片工作的时间;单粒子效应中最常见的是单粒子反转,其会造成存储型逻辑状态翻转,是航天器最主要的故障原因。空间辐射已经对航天器造成了很大的威胁,在1971年至1986年发射的同步卫星发生的故障中,71%由空间辐射造成,我国的“风云一号”气象卫星也是因为空间辐射导致姿态失控,卫星失效。由此可见,增强星载计算机的可靠性具有重要意义与工程实际性。
在国内,星载计算机普遍采用双模冗余结构,例如“东方红三号”、“创新一号”和“神州五号”等等。该结构虽然能够在一定程度上提高星载计算机***的可靠性,但是,只要存在一个处理器故障,其可靠性将会降低。目前所研究的星载计算机***,主要针对处理器进行加固,而外设一般采用单一设备的方式,这种***结构,一旦外设出现故障,则将导致故障外设所需完成的功能无法实现。
目前为了提高星载计算机***的可靠性,普遍采用抗辐能力强、可靠性高的处理器,一方面我国无法生产抗辐能力强、可靠性高且性能优良的宇航级处理器,而从国外也很难获得,另一方面这样的处理器的价格昂贵,会大大增加星载计算机的成本。因此目前我国大多使用较为成熟,性能较差的处理器,大大降低了星载计算机的处理能力。
发明内容
本发明的目的是为了解决现有航天器会受到来自空间各种辐射的影响;星载计算机普遍采用双模冗余结构,只要存在一个处理器故障,其可靠性将会降低,一旦外设出现故障,则将导致故障外设所需完成的功能无法实现,处理能力低的问题,而提出了一种星载计算机***方案设计方法。
上述的发明目的是通过以下技术方案实现的:
步骤一、对外部设备进行检测,判断其工作状态,如果工作状态正常,则星载计算机***正常运行,根据星载计算机***运行的需求,外部设备采集卫星的状态信息,进行步骤二;如果工作状态不正常,则进行步骤五;
步骤二、FPGA将步骤一中采集的卫星的状态信息进行汉明码编码后的数据分别发送给三个DSP进行计算处理,得到处理后的卫星的状态信息,三个DSP收到的数据相同,三个DSP分别为DSP_A、DSP_B、DSP_C;DSP为数字信号处理器;DSP_A、DSP_B、 DSP_C分别为数字信号处理器A、数字信号处理器B、数字信号处理器C;
FPGA为现场可编程门阵列,FPGA包括FPGA_A和FPGA_B,利用定时器模块控制FPGA_A和FPGA_B间隔固定的时间进行切换工作,固定的时间为人为设定;
步骤三、DSP_A、DSP_B、DSP_C将处理后的卫星的状态信息进行汉明码编码后发送给FPGA,FPGA得到DSP_A、DSP_B、DSP_C发送来的编码后的卫星状态信息的处理结果;
步骤四、FPGA首先把DSP_A、DSP_B、DSP_C发送来的编码后的卫星状态信息的处理结果进行解码校验,然后进行比较,根据比较结果判断DSP_A、DSP_B、DSP_C是否受空间辐射的影响而运行出错,如果DSP_A、DSP_B、DSP_C中有一个或3个出错,则进行步骤六;如果DSP_A、DSP_B、DSP_C不出错,则DSP_A、DSP_B、DSP_C不受单粒子翻转的影响,星载计算机***正常运行;
步骤五、外部设备出错后,FPGA启动备份的外部设备接替出错外部设备的工作,保证星载计算机***的正常运行;
步骤六、若发现一个DSP出错,FPGA启动备份的DSP_D接管出错的DSP进行工作,此时,FPGA将出错DSP未出错前最后一次正确的处理进度,发送给备份的DSP_D,使 DSP_D能够赶上没有出错的DSP的处理进度,成为工作机;
若DSP_A、DSP_B、DSP_C都出错,FPGA把DSP_A、DSP_B、DSP_C重启,并将 DSP_A、DSP_B、DSP_C未出错前最后一次正确的处理进度分别发送给DSP_A、DSP_B、 DSP_C,DSP_A、DSP_B、DSP_C从该处开始工作,无需重头开始处理。
发明效果
星载计算机在空间环境中易受空间辐射的影响,主要表现为总剂量效应和单粒子效应的影响。总剂量效应和单粒子效应会影响星载计算机的正常工作,针对该问题,本发明采用两个FPGA和4个DSP设计了一套星载计算机***。FPGA作为***的控制单元,通过两个FPGA定时切换交替工作消除总剂量效应的影响,并通过软件冗余设计提高***的可靠性。DSP作为***的处理单元,主FPGA对四个DSP的处理数据进行仲裁,并对出错的DSP进行处理,DSP同样采用软件冗余设计提高***的可靠性。针对数据传输过程容易出错的问题,把FPGA和DSP需要交互的关键数据进行编码,通过检错纠错机制提高数据传输的可靠性。
在硬件上,本计算机***采用三模冗余加一备份机的结构,并采用仲裁机制,可有效通过硬件冗余提高星载计算机自主计算空间操作指令的正确性,提升在轨应用的可靠性,其中仲裁及故障检测控制器采用两片FPGA切换工作,有利于减小航天器所受空间辐射总剂量效应对星载计算机内部逻辑的影响。同时通过采用“工作机+备份机”的结构模式提高外设的可靠性。
在软件上,本***对容易受到辐射影响的DSP采用多种软件加固方式,包括DSP信息加固、DSP监测加固、DSP冗余加固、存储器与寄存器刷新和设置中断“陷阱”,提升单片DSP数据处理的准确性。为了防止数据在存储或传递的过程中,受到空间辐射的影响产生错误,本***还设计了检错纠错机制,提高数据的可靠性,由于其能纠错,这也提高了星载计算机的效率。
本***采用了硬件冗余和软件加固的方式等多种途径增强星载计算机的可靠性,因此对单片芯片的性能可适当降低,使得使用货架级别的DSP和FPGA成为可能。
与双模冗余结构相比,本发明设计的星载计算机***采用3模冗余和一个备份机的***结构,采用仲裁机制提高***的可靠性。
目前所研究的星载计算机***,主要针对处理器进行加固,而外设一般采用单一设备的方式,这种***结构,一旦外设出现故障,则将导致故障外设所需完成的功能无法实现,与之相比,本发明的外设采用“工作机+备份机”模式。
目前我国大多使用较为成熟,性能较差的处理器,大大降低了星载计算机的处理能力。为此,本发明的***结构可以采用货架级别的处理器,这些商用器件性能强,成本低,功耗低且容易获得,这将大大提高星载计算机的处理能力,节约成本。
附图说明
图1为星载计算机***结构图;
图2为DSP结构图;
图3为正常工作结构图;
图4为DSP出错结构图;
图5为FPGA出错结构图;
图6为外设故障结构图;
图7为信息加固程序流程;
图8为程序指针地址监测流程,PC为程序计数器的值,GD1为存储当前程序块号的全局变量,GD2为存储上一个程序块号的全局变量;
图9为关键数据三模冗余;
图10为***控制单元结构图;
图11为星载计算机***运行流程图;
图12为DSP软件执行流程;
图13为比较点状态转换流程图。
具体实施方式
具体实施方式一:本实施方式的一种星载计算机***方案设计方法,具体是按照以下步骤制备的:
步骤一、对外部设备(包括AD/DA、存储器、总线、I/O口,I/O为输入/输出端口) 进行检测,判断其工作状态,如果工作状态正常,则星载计算机***正常运行,根据星载计算机***运行的需求,外部设备采集卫星的状态信息,进行步骤二;如果工作状态不正常,则进行步骤五;
步骤二、FPGA将步骤一中采集的卫星的状态信息进行汉明码编码后的数据分别发送给三个DSP进行计算处理,得到处理后的卫星的状态信息,三个DSP收到的数据相同,三个DSP分别为DSP_A、DSP_B、DSP_C;DSP为数字信号处理器;DSP_A、DSP_B、 DSP_C分别为数字信号处理器A、数字信号处理器B、数字信号处理器C;
FPGA为现场可编程门阵列,FPGA包括FPGA_A和FPGA_B,利用定时器模块控制FPGA_A和FPGA_B间隔固定的时间进行切换工作,固定的时间为人为设定;
步骤三、DSP_A、DSP_B、DSP_C将处理后的卫星的状态信息进行汉明码编码后发送给FPGA,FPGA得到DSP_A、DSP_B、DSP_C发送来的编码后的卫星状态信息的处理结果;
步骤四、FPGA首先把DSP_A、DSP_B、DSP_C发送来的编码后的卫星状态信息的处理结果进行解码校验,然后进行比较,根据比较结果判断DSP_A、DSP_B、DSP_C是否受空间辐射的影响而运行出错,如果DSP_A、DSP_B、DSP_C中有一个或3个出错,则进行步骤六;如果DSP_A、DSP_B、DSP_C不出错,则DSP_A、DSP_B、DSP_C不受单粒子翻转的影响,星载计算机***正常运行;
步骤五、外部设备出错后,FPGA启动备份的外部设备接替出错外部设备的工作,保证星载计算机***的正常运行;
步骤六、
若发现一个DSP出错,FPGA启动备份的DSP_D接管出错的DSP进行工作,此时, FPGA将出错DSP未出错前最后一次正确的处理进度,发送给备份的DSP_D,使DSP_D 能够赶上没有出错的DSP的处理进度,成为工作机;
若DSP_A、DSP_B、DSP_C都出错,FPGA把DSP_A、DSP_B、DSP_C重启,并将 DSP_A、DSP_B、DSP_C未出错前最后一次正确的处理进度分别发送给DSP_A、DSP_B、 DSP_C,DSP_A、DSP_B、DSP_C从该处开始工作,无需重头开始处理。
本发明设计的星载计算机***由多个FPGA和DSP构成,其***结构图如图1所示,其中DSP的结构图如图2所示,图中的DSP_X可以为DSP_A、DSP_B、DSP_C、DSP_D。
控制单元由两片FPGA构成,从外部获得航天器的各项数据以及命令信息,控制多个 DSP进行处理,同时负责与外部存储、总线、输入输出接口和模数转换接口等的信息交互。其主要实现DSP数据检测恢复和外设故障检测恢复两大功能。其中DSP数据检测恢复包括数据比较单元、处理进度恢复单元、错误恢复单元;外设故障检测恢复包括外设故障检测单元和外设故障恢复单元;这些单元的功能如下:
(1)数据比较单元:接受来自DSP比较点的数据,当所有参与比较的DSP将比较点的数据都发送给FPGA时,数据比较单元对比较点的数据进行比较,判断DSP是否出错,当发现出错DSP时,处理进度恢复单元和错误恢复单元开始工作。
(2)处理进度恢复单元:若发现一个出错DSP,FPGA启动备份的DSP接管出错DSP 进行工作,此时,处理进度恢复单元将出错DSP的上一个正确比较点的进度发送给该备份DSP,使其能够快速赶上没有出错的DSP的处理进度,成为工作机。若所有DSP都出错,处理进度恢复单元等待所有DSP重启后,将上一次比较正确的处理进度分别发送给 DSP,DSP从该处开始工作,无需重头开始处理。
(3)出错DSP恢复单元:当发现一个DSP出错,FPGA中的出错DSP恢复单元将出错DSP隔离重启,并将其转变为备份机。若所有的DSP都出错,出错DSP恢复单元将控制所有DSP进行重启。
(4)外设故障检测单元:周期性的对外设进行检测,判断其是否正常工作,若外设出现故障,启动外设故障恢复单元。
(5)外设故障恢复单元:控制备份外设接管故障外设工作,成为工作机,并将故障外设隔离修复成为备份外设。
***正常工作时,由FPGA_A、DSP_A、DSP_B、DSP_C、主存储器、主总线、主I/O、主AD/DA构成,如图3所示。
当DSP出错时,备份的DSP将接管出错DSP工作,其他未出错的器件与正常工作时一致,以DSP_A出错为例,其工作结构图如图4所示。
当主FPGA出错,即FPGA_A出错,或者到达FPGA的切换时间时,备份的FPGA 接管工作,FPGA_A断电等待,其他未出错的器件与正常工作时一致,如图5所示。
当某一外设出现故障时,开启备份外设,接替故障外设工作,其他未出错的器件与正常工作时一致,以主存储器出错为例,其工作结构图如图6所示。
1.1DSP软件加固
本发明为了降低单粒子效应对星载计算机的影响,针对单DSP,提出了以下几种不同的加固方法。
1.1.1DSP信息加固
对DSP信息的加固设计主要有:限制数据的值域和编码校验关键信息。
程序设计时设定已知数据的值域范围,在程序执行过程中,检查其是否在指定的范围内。对DSP的关键信息,包括阶段性的数据结果和输入输出信息,利用编码检错纠错(EDAC: Error DetectionAnd Correction)的信息冗余方法对其进行加固设计。DSP信息加固具体程序流程如图7所示:
1.1.2DSP监测加固
DSP的监测加固设计包括:对程序运行时间和指针地址的监测。应用看门狗技术对程序运行时间进行监测;利用跳转区间监测法对程序指针地址进行监测,如图8。
1.1.3DSP冗余加固
DSP冗余加固设计的对象为:关键变量和重要指令。
(1)对关键的数据进行三模冗余:三模冗余(TMR:Triple ModularRedundancy)是对变量进行容错时常用的一种方法。实现流程如图9所示。
(2)重要指令重复执行:对程序流向起决定作用的指令和对***工作状态有重要作用的指令,在进行程序设计时可以将有效指令重写,以确保这些指令的正确执行。
1.1.4存储器与寄存器刷新
在DSP应用***中,可以在程序运行的空隙,从片外PROM区按照顺序重新加载程序代码和重要的数据或者常数,以刷新被单粒子打翻的RAM区。
本发明 中采取固定时间间隔对外设寄存器进行重新写入的措施,确保DSP与外设器件之间的正常通信,提高***的可靠性。
1.1.5设置中断“陷阱”
进行DSP程序设计时,在DSP的中断使能寄存器中把没有使用的中断关闭,并在对应的中断服务函数处设置“中断陷阱”,若发现有中断发生,则通知控制单元对DSP进行复位,以防止意外中断扰乱***的正常工作。
1.1.6***控制单元FPGA加固
本发明设计的***中控制单元FPGA采用双机冷备的工作方式,即在工作机故障时,备份机上电启动后自动切入工作状态,并对工作机进行故障诊断和维修,待故障修复完毕后,工作机去电变成备份机。
***对每一块FPGA均设有看门狗电路(watchdog,WD),用于监控FPGA的运行。一旦工作FPGA发生故障,出现程序跑飞或陷入死循环,故障机相应的看门狗电路将会检测到故障的出现,并立即发送复位脉冲信号以重启故障机,同时发送中断请求信号,启动备份FPGA接管故障FPGA进行工作。其***结构图如图10所示。
为了减小空间辐射总剂量效应对FPGA的影响,在FPGA不发生故障的情况下,通过定时器设定一定的时间,当定时器到达所设置时间后,发送脉冲信号将主备份机进行切换。1.1.7数据的检错纠错
在空间环境中,星载计算机中存储的数据或者数据在***中交互时很容易受到单粒子效应等空间效应的影响,导致数据出错,可能导致DSP的运行错误,所以有必要对星载计算机***的数据进行检错纠错。由于汉明码的编码解码简单,很容易在硬件上实现,故本发明采用汉明码对数据进行编码解码。
汉明码由数据位和校验构成,可以监测两位及两位以下数据位错误,本发明以32比特为一组数据进行编码,如表1所示。
表1校验位和数据位的对应关系
表中CC0~CC5为校验位,D0~D31为数据位。编码的规则为:CC0、CC1、CC2分别为以表中列编号中最低位为1、第二位为1、最高位为1对应的数据位的异或结果,例如 CC0=D4+D11+D19+D26+D0+D6+D13+D21+D28+D1+D8+D15+D23+D30 +D3+D10+D17+D25,CC3、CC4、CC5分别为以表中行编号中最低位为1、第二位为 1、最高位为1对应的数据位的异或结果。
在编码时,根据D0~D31生成CC0~CC5,并与数据一起存储,在检错时,根据数据重新生成CC0~CC5,若数据正确,则两次生成的校验码一样,当只有一位数据位出错时,根据不一样的校验码可以判断数据在哪一位出错,从而可以进行纠错,例如,如表2所示,根据CC1/CC3/CC4不一样,可以判断D20错误,从而就D20进行纠错,获得正确的数据。为了在两位数据出错时能够准确的判断错误的位数,本专利在校验位中增加一位奇偶校验位CC6,若是一位数据位出错,则两次生成的CC6不一样,而若是两位数据位出错,则两次的CC6都一样,从而对数据进行纠错,得到正确的数据。
表2一位错误检测
1.1.8星载计算机***软件流程设计
高可靠并行星载计算机***的控制单元由两片FPGA构成,四片DSP构成计算单元,其工作流程需要FPGA与DSP的相互配合。在整个***的工作过程中,处在待命状态的备份DSP和备份FPGA处在掉电状态,有利于减少总剂量效应的积累,并节约能源。整个计算机***分为初始化、执行、比较、恢复四个状态,由FPGA控制这些状态的切换,其运行流程图如图11所示,对应的DSP软件执行流程如图12所示。
1.1.9初始化状态
每片DSP都配有一个相应的Flash,用于存储自己的程序,DSP启动后,通过BOOT 程序将Flash中存储的程序转移至RAM中,并进行初始化配置。
1.1.10执行状态
在“执行状态”,在重要的数据处设置比较点,在比较点处,将重要的数据发送到FPGA 中进行比较,然后等待比较结果的反馈,其流程图如图13所示。
(1)FPGA首先需要判断是否接收完所有DSP的被比较数据,若所有数据已接收完成, FPGA开始比较,否则等待所有数据的到达。
(2)在进行比较的时候,如果所有DSP的数据一致,表明没有错误发生;如果DSP 的数据不一致,说明***中出现了错误,如果参加比较的DSP的数目为3个,利用“少数服从多数”原则将错误DSP选出来,排除其结果,并将错误DSP重启,备份DSP接管工作;但是,当同时出现多个DSP错误时,每个DSP的被比较数据都不相同,此时无法根据“少数服从多数”原则来排除错误,此时认为所有DSP都发生错误,将所有DSP同时重启。如果参加比较的DSP个数为2,说明有恢复进度的DSP还没有赶上程序的进度,此时,等待该DSP到达比较点,将数据发送给FPGA后再进行比较。
1.1.11故障恢复机制设计
在本发明 所设计的星载计算机***中,当FPGA得到比较的结果后,FPGA会给正常工作的DSP发送比较结果,使其继续执行程序,同时向出错DSP发送命令,命令出错 DSP将执行程序的进度信息发送给FPGA进行保存,完成这一任务之后,FPGA控制其重启修复,然后掉电成为备份机;同时,将出错DSP的执行进度信息交给“故障恢复单元”,由“故障恢复单元”控制备份DSP启动,并将出错DSP的执行进度信息发送给备份DSP,使其能够从出错DSP的出错位置开始继续执行程序,而无需从头开始执行程序,达到快速启动,快速接管出错DSP工作。
具体实施方式二:本实施方式与具体实施方式一不同的是:所述步骤一中对外部设备 (包括AD/DA、存储器、总线、I/O口,I/O为输入/输出端口)进行检测,判断其工作状态,如果工作状态正常,则星载计算机***正常运行,根据星载计算机***运行的需求,外部设备采集卫星的状态信息,进行步骤二;如果工作状态不正常,则进行步骤五;具体过程为:
星载计算机***运行过程中,控制单元FPGA对外部设备进行周期自检,即根据外部设备的工作原理,人为设置输入量,把外部设备的输出数据与正常的数据结果进行比较,判断外部设备的工作状态。以AD模块为例,可以设置输入电压为一定值,经AD转换后的结果与正常的数据结果进行比较,其他外部设备可以采用同样的思想进行自检。
其它步骤及参数与具体实施方式一相同。
具体实施方式三:本实施方式与具体实施方式一或二不同的是:所述步骤二中FPGA 将步骤一中获得的卫星的状态信息进行汉明码编码后分别发送给三个DSP进行计算处理,得到处理后的卫星的状态信息,三个DSP分别为DSP_A、DSP_B、DSP_C;DSP为数字信号处理器;DSP_A、DSP_B、DSP_C分别为数字信号处理器A、数字信号处理器 B、数字信号处理器C;具体过程为:
DSP_A、DSP_B、DSP_C首先把FPGA发送来的汉明码编码后的卫星的状态信息进行汉明码编码后的数据进行解码校验,然后再进行计算处理,得到处理后的卫星的状态信息。在设计DSP***程序时,采取软件冗余措施,包括信息加固、监测加固、冗余加固、存储器与寄存器刷新和设置中断“陷阱”等措施,提高DSP***运行的可靠性。
其它步骤及参数与具体实施方式一或二相同。
具体实施方式四:本实施方式与具体实施方式一至三之一不同的是:所述步骤二中 FPGA包括FPGA_A和FPGA_B,利用定时器模块控制FPGA_A和FPGA_B间隔固定的时间进行切换工作,固定的时间为人为设定;具体过程为:
人为设定一固定时间,利用定时器模块控制FPGA_A和FPGA_B进行切换交替工作,减小总剂量效应的影响;并在PFGA运行中,利用看门狗模块监测FPGA程序的运行,防止程序跑飞。
其它步骤及参数与具体实施方式一至三之一相同。
具体实施方式五:本实施方式与具体实施方式一至四之一不同的是:所述步骤四中 FPGA首先把DSP_A、DSP_B、DSP_C发送来的编码后的卫星状态信息进行解码校验,然后进行比较,根据比较结果判断DSP_A、DSP_B、DSP_C是否受空间辐射的影响而运行出错,如果DSP_A、DSP_B、DSP_C中有一个或3个出错,则进行步骤六;如果DSP_A、 DSP_B、DSP_C不出错,则DSP_A、DSP_B、DSP_C不受单粒子翻转的影响,星载计算机***正常运行;具体过程为:
FPGA首先把DSP_A、DSP_B、DSP_C发送来的编码后的卫星的状态信息进行解码校验,得到解码校验后的卫星的状态信息,然后FPGA通过三模冗余的方式对解码校验后的卫星的状态信息进行比较,根据比较结果判断DSP_A、DSP_B、DSP_C是否受空间辐射的影响而运行出错;当发现DSP_A、DSP_B、DSP_C中有一个或3个出错时,星载计算机***的控制单元FPGA则对出错的DSP进行重新上电重启。
其它步骤及参数与具体实施方式一至四之一相同。
具体实施方式六:本实施方式与具体实施方式一至五之一不同的是:所述步骤六具体过程为:
若发现一个DSP(DSP_A、DSP_B或DSP_C)出错,FPGA启动备份的DSP_D接管出错的DSP(DSP_A、DSP_B或DSP_C)进行工作,此时,FPGA将出错DSP(DSP_A、 DSP_B或DSP_C)未出错前最后一次正确的处理进度,发送给备份的DSP_D,使DSP_D 能够赶上没有出错的DSP((DSP_A、DSP_B)或(DSP_A、DSP_C)或(DSP_B、DSP_C)) 的处理进度,成为工作机;
若DSP_A、DSP_B、DSP_C都出错,FPGA把DSP_A、DSP_B、DSP_C重启,并将 DSP_A、DSP_B、DSP_C未出错前最后一次正确的处理进度分别发送给DSP_A、DSP_B、 DSP_C,DSP_A、DSP_B、DSP_C从该处(指DSP_A、DSP_B、DSP_C未出错前最后一次正确的处理进度)开始工作,无需重头开始处理。
其它步骤及参数与具体实施方式一至五之一相同。
Claims (4)
1.一种星载计算机***方案设计方法,其特征在于一种星载计算机***方案设计方法具体是按照以下步骤进行的:
步骤一、对外部设备进行检测,判断其工作状态,如果工作状态正常,则星载计算机***正常运行,根据星载计算机***运行的需求,外部设备采集卫星的状态信息,进行步骤二;如果工作状态不正常,则进行步骤五;
步骤二、FPGA将步骤一中采集的卫星的状态信息进行汉明码编码后的数据分别发送给三个DSP进行计算处理,得到处理后的卫星的状态信息,三个DSP收到的数据数量相同,三个DSP分别为DSP_A、DSP_B、DSP_C;DSP为数字信号处理器;DSP_A、DSP_B、DSP_C分别为数字信号处理器A、数字信号处理器B、数字信号处理器C;
FPGA为现场可编程门阵列,FPGA包括FPGA_A和FPGA_B,利用定时器模块控制FPGA_A和FPGA_B间隔固定的时间进行切换工作,固定的时间为人为设定;
步骤三、DSP_A、DSP_B、DSP_C将处理后的卫星的状态信息进行汉明码编码后发送给FPGA,FPGA得到DSP_A、DSP_B、DSP_C发送来的编码后的卫星状态信息的处理结果;
步骤四、FPGA首先把DSP_A、DSP_B、DSP_C发送来的编码后的卫星状态信息的处理结果进行解码校验,得到解码校验后的卫星的状态信息,然后FPGA通过三模冗余的方式对解码校验后的卫星的状态信息进行比较,根据比较结果判断DSP_A、DSP_B、DSP_C是否受空间辐射的影响而运行出错,如果DSP_A、DSP_B、DSP_C中有一个或3个出错,则进行步骤六;如果DSP_A、DSP_B、DSP_C不出错,则DSP_A、DSP_B、DSP_C不受单粒子翻转的影响,星载计算机***正常运行;
步骤五、外部设备出错后,FPGA启动备份的外部设备接替出错外部设备的工作,保证星载计算机***的正常运行;
步骤六、
若发现一个DSP出错,FPGA启动备份的DSP_D接管出错的DSP进行工作,此时,FPGA将出错DSP未出错前最后一次正确的处理进度,发送给备份的DSP_D,使DSP_D能够赶上没有出错的DSP的处理进度,成为工作机;
若DSP_A、DSP_B、DSP_C都出错,FPGA把DSP_A、DSP_B、DSP_C重启,并将DSP_A、DSP_B、DSP_C未出错前最后一次正确的处理进度分别发送给DSP_A、DSP_B、DSP_C,DSP_A、DSP_B、DSP_C从该处开始工作,无需重头开始处理。
2.根据权利要求1所述一种星载计算机***方案设计方法,其特征在于:所述步骤一中对外部设备进行检测,判断其工作状态,如果工作状态正常,则星载计算机***正常运行,根据星载计算机***运行的需求,外部设备采集卫星的状态信息,进行步骤二;如果工作状态不正常,则进行步骤五;具体过程为:
星载计算机***运行过程中,FPGA对外部设备进行周期自检,即根据外部设备的工作原理,人为设置输入量,把外部设备的输出数据与正常的数据结果进行比较,判断外部设备的工作状态。
3.根据权利要求2所述一种星载计算机***方案设计方法,其特征在于:所述步骤二中FPGA将步骤一中获得的卫星的状态信息进行汉明码编码后分别发送给三个DSP进行计算处理,得到处理后的卫星的状态信息,三个DSP收到的数据相同,三个DSP分别为DSP_A、DSP_B、DSP_C;DSP为数字信号处理器;DSP_A、DSP_B、DSP_C分别为数字信号处理器A、数字信号处理器B、数字信号处理器C;具体过程为:
DSP_A、DSP_B、DSP_C首先把FPGA发送来的进行汉明码编码后的卫星的状态信息进行解码校验,然后再进行计算处理,得到处理后的卫星的状态信息。
4.根据权利要求3所述一种星载计算机***方案设计方法,其特征在于:所述步骤二中FPGA包括FPGA_A和FPGA_B,利用定时器模块控制FPGA_A和FPGA_B间隔固定的时间进行切换工作,固定的时间为人为设定;具体过程为:
人为设定一固定时间,利用定时器模块控制FPGA_A和FPGA_B进行切换交替工作,减小总剂量效应的影响;并在FPGA运行中,利用看门狗模块监测FPGA程序的运行,防止程序跑飞。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510956742.6A CN105607698B (zh) | 2015-12-17 | 2015-12-17 | 一种星载计算机***方案设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510956742.6A CN105607698B (zh) | 2015-12-17 | 2015-12-17 | 一种星载计算机***方案设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105607698A CN105607698A (zh) | 2016-05-25 |
CN105607698B true CN105607698B (zh) | 2019-01-04 |
Family
ID=55987689
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510956742.6A Active CN105607698B (zh) | 2015-12-17 | 2015-12-17 | 一种星载计算机***方案设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105607698B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250349A (zh) * | 2016-08-08 | 2016-12-21 | 浪潮(北京)电子信息产业有限公司 | 一种高能效异构计算*** |
CN106531224B (zh) * | 2016-10-25 | 2019-07-16 | 哈尔滨工业大学 | 一种基于sram型fpga的ram数据可靠性加固装置及方法 |
CN106803770B (zh) * | 2016-12-06 | 2020-04-28 | 中国电子科技集团公司第三十二研究所 | 面向卫星有效载荷控制与处理*** |
CN106776434A (zh) * | 2016-12-21 | 2017-05-31 | 中核控制***工程有限公司 | 一种安全级dcs产品点对点通信电路 |
CN106933145B (zh) * | 2017-03-09 | 2019-04-23 | 上海微小卫星工程中心 | 一种星载处理***及其控制运行方法 |
JP6563086B1 (ja) * | 2018-06-28 | 2019-08-21 | 三菱電機株式会社 | 車載電子制御装置 |
CN109857700B (zh) * | 2019-01-31 | 2023-08-29 | 深兰科技(上海)有限公司 | 一种fpga切换方法、装置、***、电子设备及介质 |
CN110554981A (zh) * | 2019-08-02 | 2019-12-10 | 中国科学院上海微***与信息技术研究所 | 基于交替偏置的高可靠接口电路及方法 |
CN110673975B (zh) * | 2019-08-23 | 2023-06-02 | 上海航天控制技术研究所 | 一种星载计算机软件的安全内核结构及安全运行方法 |
CN110417126B (zh) * | 2019-08-29 | 2021-02-02 | 江苏高智电力设计咨询有限公司 | 一种小区电力智能配用电*** |
CN111585806A (zh) * | 2020-04-30 | 2020-08-25 | 南通凡肯电子设备研发有限公司 | 一种双主机通信的控制***及控制方法 |
CN111708623B (zh) * | 2020-06-01 | 2023-02-03 | 哈尔滨工业大学 | 一种星务管理和星图处理一体化平台 |
CN112416319B (zh) * | 2020-11-12 | 2021-07-30 | 北京和德宇航技术有限公司 | 卫星***变量保护方法、装置、电子设备及存储介质 |
CN113326524B (zh) * | 2021-06-18 | 2024-05-28 | 鹏城实验室 | 指令处理方法及处理器 |
CN113778060B (zh) * | 2021-09-15 | 2023-07-25 | 上海卫星工程研究所 | 卫星遥控接收终端在轨异常监测与故障恢复方法及*** |
WO2024082174A1 (zh) * | 2022-10-19 | 2024-04-25 | 宁德时代未来能源(上海)研究院有限公司 | 异常处理方法及三取二保护装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7649931B1 (en) * | 2006-12-29 | 2010-01-19 | Kiomars Anvari | Equalizer filter with dynamically configurable code domain filter |
CN103399807A (zh) * | 2013-06-28 | 2013-11-20 | 中国航天科技集团公司第五研究院第五一三研究所 | 一种用于三模冗余计算机的动态现场自主恢复方法 |
CN103744754A (zh) * | 2014-01-26 | 2014-04-23 | 上海交通大学 | 一种抗辐射加固并行星载计算机***及其使用方法 |
KR20140135354A (ko) * | 2013-05-16 | 2014-11-26 | 주식회사 두시텍 | 항법위성 방해전파 발생 장치 및 이를 구비하는 항법위성 전파오류 통합 시험 시스템 |
CN104182305A (zh) * | 2014-08-28 | 2014-12-03 | 上海航天电子通讯设备研究所 | 三模冗余控制和数据管理计算机及其使用方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101615147A (zh) * | 2009-07-23 | 2009-12-30 | 浙江大学 | 皮卫星基于fpga的存储模块的容错方法 |
CN101917285B (zh) * | 2010-07-29 | 2012-01-25 | 航天东方红卫星有限公司 | 小卫星星务主机双机冷备结构的三机实现方法 |
KR101242564B1 (ko) * | 2012-10-23 | 2013-03-19 | 주식회사 동우기술단 | 토목구조물 및 건축물 안전진단시 광학렌즈 및 망원렌즈를 이용한 정밀안전진단 장비 |
JP6379549B2 (ja) * | 2014-03-18 | 2018-08-29 | セイコーエプソン株式会社 | タイミング信号生成装置および電子機器 |
CN203149557U (zh) * | 2013-02-01 | 2013-08-21 | 中国科学院近代物理研究所 | 基于fpga的容错异步串行收发器装置 |
CN104044756B (zh) * | 2014-06-09 | 2016-04-27 | 中国科学院长春光学精密机械与物理研究所 | 高集成高精度控制力矩陀螺群伺服控制装置 |
-
2015
- 2015-12-17 CN CN201510956742.6A patent/CN105607698B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7649931B1 (en) * | 2006-12-29 | 2010-01-19 | Kiomars Anvari | Equalizer filter with dynamically configurable code domain filter |
KR20140135354A (ko) * | 2013-05-16 | 2014-11-26 | 주식회사 두시텍 | 항법위성 방해전파 발생 장치 및 이를 구비하는 항법위성 전파오류 통합 시험 시스템 |
CN103399807A (zh) * | 2013-06-28 | 2013-11-20 | 中国航天科技集团公司第五研究院第五一三研究所 | 一种用于三模冗余计算机的动态现场自主恢复方法 |
CN103744754A (zh) * | 2014-01-26 | 2014-04-23 | 上海交通大学 | 一种抗辐射加固并行星载计算机***及其使用方法 |
CN104182305A (zh) * | 2014-08-28 | 2014-12-03 | 上海航天电子通讯设备研究所 | 三模冗余控制和数据管理计算机及其使用方法 |
Non-Patent Citations (3)
Title |
---|
《卫星动态备份******设计》;李德尔;《信息科技辑》;20020228;全文 |
《多dsps星载数据管理***设计》;王轶群;《信息科技辑》;20130731;全文 |
《现代小卫星可靠性分析方法研究》;张鹏;《工程科技Ⅱ辑》;20130331;全文 |
Also Published As
Publication number | Publication date |
---|---|
CN105607698A (zh) | 2016-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105607698B (zh) | 一种星载计算机***方案设计方法 | |
WO2018120442A1 (zh) | 一种遥感卫星图像处理载荷多任务主控*** | |
CN111352338B (zh) | 一种双余度飞控计算机及余度管理方法 | |
US8635492B2 (en) | State recovery and lockstep execution restart in a system with multiprocessor pairing | |
Ornstein et al. | Pluribus: a reliable multiprocessor | |
Iturbe et al. | A triple core lock-step (tcls) arm® cortex®-r5 processor for safety-critical and ultra-reliable applications | |
ES2696604T3 (es) | Arquitectura de marco tolerante a fallos con triple redundancia de software | |
US8886994B2 (en) | Radiation hard and fault tolerant multicore processor and method for ionizing radiation environment | |
CN101576836B (zh) | 一种可降级的三机冗余容错*** | |
CN103744754B (zh) | 一种抗辐射加固并行星载计算机***及其使用方法 | |
US9104644B2 (en) | Operating method of software fault-tolerant handling system | |
CN104731670A (zh) | 一种面向卫星的轮换式星载计算机容错*** | |
CN102521066A (zh) | 星载计算机空间环境事件容错方法 | |
CN108984329A (zh) | 延迟错误处理 | |
JP2022088346A (ja) | コア同期のためのデバッグトレースストリーム | |
Jha et al. | Resiliency of hpc interconnects: A case study of interconnect failures and recovery in blue waters | |
Chen et al. | Reliability and availability analysis for the JPL remote exploration and experimentation system | |
CN102521086B (zh) | 基于锁步同步的双模冗余***及其实现方法 | |
RU2569576C1 (ru) | Управляющий модуль | |
Dong et al. | A high reliability radiation hardened on-board computer system for space application | |
Grunske | Transformational patterns for the improvement of safety properties in architectural specification | |
Dörflinger et al. | A framework for fault tolerance in RISC-V | |
Zimmer et al. | Fault resilient real-time design for noc architectures | |
US11042443B2 (en) | Fault tolerant computer systems and methods establishing consensus for which processing system should be the prime string | |
Liu et al. | A survey of fault tolerance hardware architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |