CN101976212B - 一种基于少量代码重加载的dsp抗单粒子纠错方法 - Google Patents

一种基于少量代码重加载的dsp抗单粒子纠错方法 Download PDF

Info

Publication number
CN101976212B
CN101976212B CN2010105276876A CN201010527687A CN101976212B CN 101976212 B CN101976212 B CN 101976212B CN 2010105276876 A CN2010105276876 A CN 2010105276876A CN 201010527687 A CN201010527687 A CN 201010527687A CN 101976212 B CN101976212 B CN 101976212B
Authority
CN
China
Prior art keywords
program
dsp
error correction
checking routine
loaded
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
Application number
CN2010105276876A
Other languages
English (en)
Other versions
CN101976212A (zh
Inventor
吴化军
钟兴旺
张赤萍
韩虹
蔡春贵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Institute of Space Radio Technology
Original Assignee
Xian Institute of Space Radio Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xian Institute of Space Radio Technology filed Critical Xian Institute of Space Radio Technology
Priority to CN2010105276876A priority Critical patent/CN101976212B/zh
Publication of CN101976212A publication Critical patent/CN101976212A/zh
Application granted granted Critical
Publication of CN101976212B publication Critical patent/CN101976212B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于少量代码重加载的DSP抗单粒子纠错方法,通过利用DSP片内ROM的bootloader程序将PROM中的bootloader1程序加载至片内RAM中,由bootoader1程序再加载应用程序,bootoader1程序中嵌入一个校验纠错程序,通过两个程序的配合实现抗单粒子措施的。由于bootloader1程序是运行前实时加载的,所以可以认为该部分为可靠代码,再通过该部分的纠错,可以认为整个程序的运行是安全可靠的。由于在纠错时仅对代码段进行了加载,并不破坏数据区的内容,保证了程序运行的连续性;另外,本发明不变动硬件平台,极大地降低了设备的硬件成本、空间成本以及时间成本。

Description

一种基于少量代码重加载的DSP抗单粒子纠错方法
技术领域
本发明涉及一种基于少量代码重加载的DSP抗单粒子纠错方法,保证DSP软件能够在空间应用中针对单粒子翻转事件仍然可靠运行,属于微电子技术领域。 
背景技术
随着航天器功能的发展,越来越多的有效载荷产品使用了先进的数字信号处理技术,为了完成这些数字处理功能,硬件设计上采用大规模数字集成电路DSP的设备越来越多。伴随着DSP的制造工艺从0.33微米发展到90纳米(可靠性达到宇航标准的器件),这些元器件的单粒子效应越来越严重,而同时由于各个国家对空间应用的日益重视,空间中的卫星密度愈来愈大,越来越多的卫星工作在距地面1000-1800公里的轨道高度上,这段轨道中的单粒子效应格外严重,尤其是需要连续、长期稳定工作的宇航设备如果采用了这些抗单粒子效应差的大规模集成电路,又不采取单粒子效应加固措施,不能满足用户对星上数字处理设备连续完好性的要求。 
数字信号处理器(DSP)是对信号和图像实现实时处理的一种高性能的CPU,以TI的TMS320C3x为例,其是一个以寄存器为基础的CPU,主要由以下几个部分构成:浮点/整数乘法器、算术逻辑单元、32位桶式移位器、CPU寄存器组、Bootloader(片内ROM)和片内RAM。DSP受单粒子翻转影响主要有以下几种模式: 
1、程序存储区的位翻转,引起程序的“跑飞”或者“死机”或者带病运行; 
2、数据存储区的位翻转,造成关键变量的翻转,引起功能逻辑的紊乱,比如中途退出循环程序,错误执行条件语句等; 
3、外设控制寄存器的功能中断,引起外设配置状态的变化,造成模块 间数据通信的异常; 
4、中断控制寄存器的单粒子功能中断,引起意外中断的发生,扰乱正常程序进程; 
5、程序Cache的位翻转,引起程序的异常执行; 
6、JTAG逻辑的功能中断,导致整个DSP的复位或者死机。 
从公开刊物及公开渠道上所了解到的国外的DSP抗单粒子技术主要有以下两种: 
(1)使用片外存储器+EDAC校验的方式 
利用FPGA对片外存储器进行校验纠错,系统组成如图1所示,DSP使用片外存储器SRAM作为程序代码的存储芯片,在DSP启动时将PROM中的数据加载至SRAM;运行过程中由专门负责校验的FPGA芯片对代码数据进行校验,将纠错后的代码传递给DSP运行,同时对SRAM进行反写纠错,这样就保证了DSP运行的正确性。 
(2)DSP硬件三模冗余方式。 
采用三片DSP芯片同时运行相同的程序,由主控计算机通过DSP芯片的HPI口来控制,对地址总线和数据进行三选一判决,当表决电路检测出一位错误时,纠错服务子程序启动工作,来根据表决电路和自检程序识别出的错误等级,错误类型修复系统回归正常。 
这两种方式较好的解决了单粒子翻转问题,但是其缺点是硬件开销大,需要增加多个芯片,而且需要在设计时就要针对单粒子问题采用该硬件平台方案。由于现在很多即将交付的型号单机的硬件平台已经定型,或者由于产品结构的问题,无法采用更改硬件平台的手段应对单粒子翻转问题。 
国内的抗单粒子研究主要也是在这两种方法的基础上进行的,尤其是第一种方法采用较多。在《空间DSP信息处理系统存储器SEU加固技术研究》(宇航学报,2010/31/02,肖山竹)中,以及《空间DSP加载系统可靠性设计》(计算机工程,2010年3月,张路)等文献中均是采用了该方法。 
使用纯软件手段实现的抗单粒子方法在文献中介绍的较少,在《星载高性能DSP加固设计方法研究》(电子器件,2007年2月,邢克飞)中介绍了依靠程序区纠错抗单粒子翻转的方法:对程序存储区进行检错,如果发现程序存储区出现错误,就通过外部监控模块对DSP程序进行重新引导。这里采用加法运算,对整个存储区的程序按照16位无符号数进行求和,结果作为校验数来检验程序区是否发生单粒子翻转。实施方法如下:在程序固化前对整个程序区进行求和,结果作为常量存放到三个位置,然后将此程序固化。当程序从ROM或者FLASH中引导到DSP中运行时,DSP在适当的时间对自身程序区数据进行求和,并将结果与三个校验值的表决结果进行比对。如果两者不一样,那么就认为程序区发生了单粒子翻转,此时可以通过程序重新引导的方法恢复正常。该方法无法保证校验程序本身的正确性,因为DSP是采用哈佛结构,数据总线和程序总线是分开的,这样校验程序无法将同一个数据同时作为数据和代码使用(会导致总线竞争而出错),在校验程序本身被单粒子打翻的时候会导致异常的后果。而且该方法的纠错方式是通过复位重新加载整个程序,这样就无法保证程序的连续运行,在很多需要连续运行的设备中不能满足应用条件。 
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供一种基于少量代码重加载的DSP抗单粒子纠错方法,本发明能够在不变动硬件平台的条件下解决了DSP单粒子翻转问题,降低了设备的硬件成本、空间成本以及时间成本。 
本发明的技术解决方案是:一种基于少量代码重加载的DSP抗单粒子纠错方法,DSP通过数据总线和地址总线与FPGA和PROM相连接,FPGA通过控制总线与PROM相连接,在PROM的不同区域中存储加载及校验程序和应用程序,当DSP上电或者复位后,DSP首先运行DSP片内ROM中的bootloader程序将PROM中的加载及校验程序加载至DSP片内RAM中,加载及校验程序开始运行后首先根据FPGA内的寄存器值判断本次程序运行是否为首次运行,如果是首 次运行加载及校验程序则由加载及校验程序直接加载运行应用程序,如果不是首次运行加载及校验程序则由应用程序在运行时定期调用DSP片内ROM中的加载及校验程序对应用程序进行纠错校验; 
所述对应用程序进行纠错校验的工作流程为: 
(1)首先对应用程序进行现场保护,然后调用DSP片内ROM所自带的bootloader程序,从PROM中将加载及校验程序加载至DSP片内RAM中; 
(2)加载完毕后跳转至加载及校验程序入口处开始执行加载及校验程序中的校验程序代码实现对应用程序代码段的抗单粒子纠错; 
(3)完成对应用程序的抗单粒子纠错后对应用程序进行现场恢复;所述存储加载及校验程序中校验程序的工作流程为: 
(a)获取跳转应用程序的目的地址,供纠错完毕后跳转至该处; 
(b)利用校验程序对应用程序代码段进行抗单粒子纠错; 
(c)如果纠错成功,则跳转至步骤(e); 
(d)如果纠错失败,则认定应用程序已被单粒子打翻,重新加载应用程序的代码段数据,首先从PROM中应用程序的首地址开始获取加载的目的地址,如果该加载段属于代码段,则对该加载段进行加载,否则跳过重新获取下一个加载段的目的地址直至加载完毕; 
(e)跳转回应用程序。 
本发明与现有技术相比的优点在于:本发明给出了一种不依赖于修改硬件设计的DSP抗单粒子方案,基于平台中高可靠性器件上存储的程序代码,实现对可靠性较低的存储器件上的数据进行纠错,具体过程是通过利用DSP片内ROM的bootloader程序将PROM中的bootloader1程序加载至片内RAM中,由bootoader1程序再加载应用程序,bootoader1程序中嵌入一个校验纠错程序,通过两个程序的配合实现抗单粒子措施的。由于bootloader1程序是运行前实时加载的,所以可以认为该部分为可靠代码,再通过该部分的纠错,可以认为整个程序的运行是安全可靠的。由于在纠错时仅对代码段进行了加载,并不破坏 数据区的内容,保证了程序运行的连续性;另外,本发明不变动硬件平台,极大地降低了设备的硬件成本、空间成本以及时间成本。 
附图说明
图1为现有技术中使用片外存储器+EDAC校验方式的系统组成图; 
图2为本发明采用的DSP平台的系统结构图; 
图3为本发明的加载及校验程序和应用程序空间存储关系图; 
图4为本发明运行加载及校验程序时的流程图; 
图5为本发明运行应用程序时的控制流程图; 
图6为本发明加载及校验程序的工作流程图。 
具体实施方式
下面结合附图和具体实施例对本发明做进一步详细的描述: 
本发明利用高可靠性器件(DSP自带的片内只读ROM)作为可信载体,实现对可靠性较差的器件中的存储数据的定时纠错,并定时更新部分控制寄存器的数据实现对控制寄存器的数据保护。DSP平台的系统结构图如图2所示,这是一个DSP应用的典型平台,由DSP及FPGA配合工作,绝大多数未采取硬件抗单粒子加固设计的数字信息处理平台的结构都是该种结构。其软件运行过程为:当DSP加电之后,DSP自动运行片内ROM中存储的bootloader程序从PROM中获取应用程序代码数据,加载至片内RAM中后跳转至应用程序入口处开始运行。PROM本身是一个高可靠性器件,但由于运行代码最终是加载到片内RAM中运行的,这就会导致在应用软件运行过程中会由于片内RAM的翻转导致软件故障发生。 
本发明将PROM中存储的原应用程序分为加载及校验程序(bootloader1)和应用程序两部分,这两部分程序在运行时存储在完全独立的两块内存区域中;其存储的空间位置情况如图3所示:其中虚线箭头表示程序的跳转关系,实线箭头表示程序的加载关系;当设备上电或者复位后,DSP首先运行片内ROM中的bootloader程序将PROM中的bootloader1程序加载至片内RAM中,由bootloader1程序再加载应用程序,bootloader1程序中嵌入一个校验纠错程序,通过两个程序的配合实现抗单粒子措施的,所以在进行设计时要分别独立设计这两段程序,并分配置不同的内存区域。 
首次运行加载及校验程序时的流程如图4所示,应用程序加载完毕后,则跳转至应用程序入口处开始应用程序的运行。应用程序的控制流如图5所示,应用程序在运行时定期调用只读ROM中的bootloader1程序实现对应用程序进行纠错校验,其实现的手段是应用程序在运行过程中,进行保护现场后,通过加载bootloader1程序实现对应用程序本身代码的纠错检查,检查后进行现场恢复,继续运行。由于检查的程序(bootloader1程序)是应用程序运行前实时加载的,所以可以认为该部分为可靠代码,再通过该部分的纠错,可以认为整个程序的运行是安全可靠的。 
Bootloader1程序:其功能为根据FPGA中的寄存器(如果没有条件也可使用内存)判断本次调用需要实现的功能为加载应用程序还是校验纠错,实现相应功能后程序跳转置不同位置开始运行。其流程如图6所示:程序开始运行后首先根据FPGA的寄存器判断本次任务是否为首次运行,如果为首次运行则加载应用程序,其流程同DSP自带的bootloader代码,只需将代码加载地址更改为设计的应用程序起始地址即可。过程如下: 
1)从设计的应用程序数据(PROM上第2块数据,第1块数据为bootloader1程序)的起始地址处获取程序入口; 
2)从PROM的数据中获取本段代码的长度; 
3)如果获取的代码长度为0,则跳转至获取的程序入口; 
4)如果获取得代码长度不为0,则继续获取本段代码的加载目的地址; 
5)向目的地址按数据长度加载代码; 
6)跳转加载下段代码,直至加载长度为0。 
加载完毕后跳转至获取的应用程序入口地址处,开始运行应用程序。 
如果并非首次运行则应该运行校验纠错流程,按照以下流程执行: 
1)获取跳转目的地址,供纠错完毕后跳转至该处; 
2)对应用程序代码段进行纠错校验,根据应用程序的map表对整个代码段进行校验检查。校验可以根据情况选用不同的校验方式,但是不建议选用过于复杂的校验方式,否则对应用软件的实时性会造成很大负面影响; 
3)如果纠错成功,则跳转至流程5。 
4)如果纠错失败,则认定程序已被单粒子打翻,重新加载应用程序的代码段数据。首先从PROM上应用程序的首地址开始获取加载的目的地址,如果该加载段属于代码段(对该目的地址数据以及代码段地址的范围进行判断)则对该段进行加载;如果该段不属于代码段则跳过,重新获取下一个加载段的目的地址直至加载完毕。 
5)跳转回应用程序。 
应用程序通过在主循环中嵌入对DSP自带的bootlader程序的调用实现对本身的检错。主要过程如下: 
(1)当应用程序主循环程序运行至校验程序处时,首先对软件现场进行保护,之后调用DSP片内ROM所自带的bootloader程序,从片外的PROM中提取由设计师开发的bootloader1程序; 
(2)加载完毕则跳转至bootloader1入口处开始执行bootlader1代码; 
(3)bootloader1程序通过读取FPGA实现的寄存器或者其他存储器的内容来区分当前是否为首次加载,不是首次加载则执行抗单粒子纠错程序。 
该程序主要有以下几个功能: 
1)对代码段的数据和PROM中的数据进行比较并纠错。 
2)对数据区中的常数部分的进行纠错。 
3)对控制寄存器进行重新初始化。 
4)跳转回主循环。 
5)恢复现场,继续运行应用程序。 
实施例: 
本例平台采用典型处理平台:DSP+FPGA配合形式,系统框图如图2所示。应用程序使用C语言编写,bootloader1使用汇编语言,bootloader1程序的具体流程如图6所示。 
FPGA除本身功能外还包含一个寄存器,该寄存器由FPGA在上电时或FPGA对DSP复位时初始化为0x55,DSP加载代码后设置为0xAA;该寄存器地址为0x810000。并且本例中将被单粒子打翻的次数记录在FPGA的一个寄存器中,供应用软件下传;该寄存器地址为0x8a0000。 
Bootloader1处于以下地址 
CODE2:origin=0x00804000,length=0x00003000 
应用程序代码段位于以下地址 
CODE1:origin=0x00800000,length=0x00003000 
Bootloader1代码如下: 
      global compare 
      text 
      compare: 
       ldi 80h,DP    ;初始化DP 
        ldi DP,AR0 
        lsh 16,AR0;代码段首地址800000h 
          ldi AR0,AR2;得到起始地址(比对用) 
          ldi AR0,AR3;得到起始地址(搬移用) 
          ldi 10e8h,AR1 
          or AR1,AR0;末尾地址计数器初始化    8010e8->ar0 
          ldi 0,AR1;异或和初始化 
       LOOP: 
          xor*AR2++,AR1;开始异或 
          cmpi AR0,AR2 
          blo LOOP 
          ldi 86F1h,R0 
          lsh 16,R0 
    or  8EF7h,R0;应用程序异或和 
  cmpi AR1,R0;比较计算结果和预设值 
    beq  exit 
    ldi  40h,AR1;40101ch->AR1EPROM首地址 
    lsh 16,AR1 
 or 101ch,AR1 
_eprom_load:;加载代码段数据 
    ldi*AR1++,R0 
    AND 0ffh,R0 
    ldi*AR1++,R1 
    and 0ffh,R1 
    lsh 8,R1 
    or R1,R0 
    ldi*AR1++,R1 
    and 0ffh,R1 
    lsh 16,R1 
    or R1,R0 
    ldi*AR1++,R1 
    lsh 24,R1 
    or R1,R0;获取32位字 
    sti R0,*AR3++;搬移 
    cmpi AR0,AR3;判断是否属于代码段数据 
    blo_eprom_load 
    ldi 8Ah,AR1;写入遥测0x8A0000供应用程序下传 
    lsh 16,AR1 
      ldi *AR1,R0 
      addi 1,R0 
      sti R0,*AR1 
exit: 
ldi 2000h,ST 
ldi 0h,IF 
ldi 010dh,IE 
    ldi 80h,AR0;获取跳转入口地址 
      lsh 16,AR0 
          or 0dadh,AR0 
      bu AR0 
应用软件在主循环中增加以下代码: 
asm(″push    DP″) 
asm(″push    AR0″) 
asm(″push    AR1″) 
asm(″push    AR2″) 
asm(″push    AR3″) 
asm(″push    R0″) 
asm(″push    R1″) 
asm(″push    R2″) 
asm(″push    R3″) 
asm(″push    R4″) 
asm(″ldi  80h,AR1″);保存堆栈指针 
asm(″lsh  16,AR1″) 
asm(″or  7000h,AR1″) 
asm(″sti sp,*AR1″) 
asm(″ldi 0h,AR1″) 
asm(″bu  AR1″);跳转至bootloader 
asm(″ldi 80h,AR1″);纠错之后跳转回的目的地址(0x800dad),获取堆栈指针 
asm(″lsh 16,AR1″) 
asm(″or  7000h,AR1″) 
asm(″sti *AR1,sp″) 
asm(″pop    R4″);恢复现场 
asm(″pop    R3″) 
asm(″pop    R2″) 
asm(″pop    R1″) 
asm(″pop    R0″) 
asm(″pop    AR3″) 
asm(″pop    AR2″) 
asm(″pop    AR1″) 
asm(″pop    AR0″) 
asm(″pop    DP″) 
本方案可以有效地对DSP的单粒子翻转故障模式中的1,3,4项进行故障的纠错处理;第2项可以通过关键变量的三摸冗余技术进行纠错管理,第5项通过禁止使用cache方式避免,第6项通过看门狗进行复位处理。综上所述,采用本方案后可以对大多数的单粒子翻转故障进行纠错处理,保证软件能够针对单粒子翻转事件进行较高可靠性的运行。 
本发明未详细描述内容为本领域技术人员公知技术。 

Claims (1)

1.一种基于少量代码重加载的DSP抗单粒子纠错方法,DSP通过数据总线和地址总线与FPGA和PROM相连接,FPGA通过控制总线与PROM相连接,其特征在于:在PROM的不同区域中存储加载及校验程序和应用程序,当DSP上电或者复位后,DSP首先运行DSP片内ROM中的bootloader程序将PROM中的加载及校验程序加载至DSP片内RAM中,加载及校验程序开始运行后首先根据FPGA内的寄存器值判断本次程序运行是否为首次运行,如果是首次运行加载及校验程序则由加载及校验程序直接加载运行应用程序,如果不是首次运行加载及校验程序则由应用程序在运行时定期调用DSP片内ROM中的加载及校验程序对应用程序进行纠错校验;
所述对应用程序进行纠错校验的工作流程为:
(1)首先对应用程序进行现场保护,然后调用DSP片内ROM所自带的bootloader程序,从PROM中将加载及校验程序加载至DSP片内RAM中;
(2)加载完毕后跳转至加载及校验程序入口处开始执行加载及校验程序中的校验程序代码实现对应用程序代码段的抗单粒子纠错;
(3)完成对应用程序的抗单粒子纠错后对应用程序进行现场恢复;所述存储加载及校验程序中校验程序的工作流程为:
(a)获取跳转应用程序的目的地址,供纠错完毕后跳转至该处;
(b)利用校验程序对应用程序代码段进行抗单粒子纠错;
(c)如果纠错成功,则跳转至步骤(e);
(d)如果纠错失败,则认定应用程序已被单粒子打翻,重新加载应用程序的代码段数据,首先从PROM中应用程序的首地址开始获取加载的目的地址,如果该加载段属于代码段,则对该加载段进行加载,否则跳过重新获取下一个加载段的目的地址直至加载完毕;
(e)跳转回应用程序。
CN2010105276876A 2010-10-27 2010-10-27 一种基于少量代码重加载的dsp抗单粒子纠错方法 Active CN101976212B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010105276876A CN101976212B (zh) 2010-10-27 2010-10-27 一种基于少量代码重加载的dsp抗单粒子纠错方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010105276876A CN101976212B (zh) 2010-10-27 2010-10-27 一种基于少量代码重加载的dsp抗单粒子纠错方法

Publications (2)

Publication Number Publication Date
CN101976212A CN101976212A (zh) 2011-02-16
CN101976212B true CN101976212B (zh) 2012-01-25

Family

ID=43576099

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010105276876A Active CN101976212B (zh) 2010-10-27 2010-10-27 一种基于少量代码重加载的dsp抗单粒子纠错方法

Country Status (1)

Country Link
CN (1) CN101976212B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9846612B2 (en) 2015-08-11 2017-12-19 Qualcomm Incorporated Systems and methods of memory bit flip identification for debugging and power management

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102354294B (zh) * 2011-08-23 2015-04-22 西安空间无线电技术研究所 一种星载dsp芯片的空间单粒子翻转检测方法
CN102694543A (zh) * 2012-04-20 2012-09-26 上海卫星工程研究所 一种防空间环境影响的星载fpga设计方法及系统
CN103077056B (zh) * 2012-12-31 2015-12-23 中国电子科技集团公司第十五研究所 使用少量ROM资源的Bootlorder实现方法
CN104062978B (zh) * 2014-06-26 2016-08-17 北京控制工程研究所 一种消除空间单粒子打翻cpu寄存器对姿态影响的方法
CN104536727B (zh) * 2014-11-26 2018-08-10 上海新跃仪表厂 星敏感器软件在轨维护方法
CN104597807B (zh) * 2014-12-10 2018-03-13 深圳航天东方红海特卫星有限公司 一种星载综合电子cpu翻转加固系统及方法
CN105094103A (zh) * 2015-06-09 2015-11-25 中国电子科技集团公司第三十六研究所 一种应用于空间飞行器的dsp代码固化存储电路
CN105068969B (zh) * 2015-07-17 2018-02-09 西安空间无线电技术研究所 用于数字信号处理平台架构的单粒子效应防护系统及方法
CN106776089A (zh) * 2016-11-28 2017-05-31 北京遥测技术研究所 一种星载嵌入式软件代码自校验纠错方法
CN108009044B (zh) * 2017-11-09 2021-06-01 中国航空工业集团公司西安航空计算技术研究所 一种实时校验flash数据正确性的方法
CN111381254B (zh) * 2019-12-27 2023-03-24 上海航天控制技术研究所 基于fpga的高可靠导航敏感器抗单粒子翻转装置
CN112115017B (zh) * 2020-08-07 2022-07-12 航天科工空间工程发展有限公司 一种星载软件程序的逻辑代码监控方法和装置
CN111930638B (zh) * 2020-10-16 2020-12-29 中国人民解放军国防科技大学 星载接收机中dsp芯片混合运行和存储检测方法
CN112559071A (zh) * 2020-12-14 2021-03-26 上海航天控制技术研究所 一种用于dsp的分段双冗余引导加载方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1632757A (zh) * 2005-01-10 2005-06-29 中国航天时代电子公司第七七一研究所 空间计算机抗单粒子翻转的存储器纠检错与自动回写方法
CN101281481A (zh) * 2008-05-23 2008-10-08 北京时代民芯科技有限公司 一种存储器抗单粒子翻转的纠错检错方法
CN101551762A (zh) * 2009-05-15 2009-10-07 中国人民解放军国防科学技术大学 具有抗单粒子效应能力的星载处理平台

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8190973B2 (en) * 2007-12-21 2012-05-29 Arm Limited Apparatus and method for error correction of data values in a storage device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1632757A (zh) * 2005-01-10 2005-06-29 中国航天时代电子公司第七七一研究所 空间计算机抗单粒子翻转的存储器纠检错与自动回写方法
CN101281481A (zh) * 2008-05-23 2008-10-08 北京时代民芯科技有限公司 一种存储器抗单粒子翻转的纠错检错方法
CN101551762A (zh) * 2009-05-15 2009-10-07 中国人民解放军国防科学技术大学 具有抗单粒子效应能力的星载处理平台

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9846612B2 (en) 2015-08-11 2017-12-19 Qualcomm Incorporated Systems and methods of memory bit flip identification for debugging and power management

Also Published As

Publication number Publication date
CN101976212A (zh) 2011-02-16

Similar Documents

Publication Publication Date Title
CN101976212B (zh) 一种基于少量代码重加载的dsp抗单粒子纠错方法
CN101539883A (zh) 嵌入式系统的错误追踪方法和装置
US8412981B2 (en) Core sparing on multi-core platforms
CN103984630B (zh) 一种基于at697处理器的单粒子翻转故障处理方法
CN101213522A (zh) 降低时钟同步双模冗余系统中的不可纠正错误率
CN114586019A (zh) 基于存储器的处理器
US20140164839A1 (en) Programmable device, method for reconfiguring programmable device, and electronic device
CN105320579B (zh) 面向sparc v8处理器的自修复双冗余流水线及容错方法
US10754760B1 (en) Detection of runtime failures in a system on chip using debug circuitry
CN106959909A (zh) 一种Android系统上的应用软件异常恢复方法
CN102521062A (zh) 可全面在线自检测单粒子翻转的软件容错方法
CN104090788B (zh) 一种基于载荷的星载软件配置和运行方法及系统
CN102207877A (zh) 空间相机在轨程序重注方法及其系统
Kretzschmar et al. Synchronization of faulty processors in coarse-grained TMR protected partially reconfigurable FPGA designs
CN109669823A (zh) 基于改进型三模冗余系统的抗多位翻转错误芯片加固方法
CN104484202B (zh) 适用于8051微控制器的航天嵌入式软件在轨重注方法
CN109614274A (zh) 处理器指令Cache单粒子翻转软错误的防护方法
Vargas et al. Preliminary results of SEU fault-injection on multicore processors in AMP mode
CN202677396U (zh) 一种基于空间搜索技术的异构容错电路设计系统
CN109213632A (zh) 一种抗辐射加固设计的星载电子系统及加固方法
Xiang et al. Optimal redundancies of parallel–series systems in irrelevancy coverage model
Campagna et al. An hybrid architecture to detect transient faults in microprocessors: an experimental validation
CN101826045B (zh) 一种可重构星载计算机永久性故障电路的在线修复方法
CN108038014A (zh) 一种图像压缩多核并行容错方法、计算机、处理器
Khoshavi et al. Two control-flow error recovery methods for multithreaded programs running on multi-core processors

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant