CN114090327A - 单粒子错误处理方法、系统及装置 - Google Patents

单粒子错误处理方法、系统及装置 Download PDF

Info

Publication number
CN114090327A
CN114090327A CN202210062985.5A CN202210062985A CN114090327A CN 114090327 A CN114090327 A CN 114090327A CN 202210062985 A CN202210062985 A CN 202210062985A CN 114090327 A CN114090327 A CN 114090327A
Authority
CN
China
Prior art keywords
error
event
processor
external sram
pin
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.)
Granted
Application number
CN202210062985.5A
Other languages
English (en)
Other versions
CN114090327B (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.)
Zhejiang Geely Holding Group Co Ltd
Zhejiang Shikong Daoyu Technology Co Ltd
Original Assignee
Zhejiang Geely Holding Group Co Ltd
Zhejiang Shikong Daoyu Technology Co Ltd
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 Zhejiang Geely Holding Group Co Ltd, Zhejiang Shikong Daoyu Technology Co Ltd filed Critical Zhejiang Geely Holding Group Co Ltd
Priority to CN202210062985.5A priority Critical patent/CN114090327B/zh
Publication of CN114090327A publication Critical patent/CN114090327A/zh
Application granted granted Critical
Publication of CN114090327B publication Critical patent/CN114090327B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本申请提供一种单粒子错误处理方法、系统及装置,应用于计算系统,计算系统包括处理器、可编程器件和至少一个具备EDAC功能的外部SRAM,处理器分别连接可编程器件和外部SRAM,可编程器件连接外部SRAM上的错误指示管脚。该方法包括:可编程器件对错误指示管脚的电平值进行采样,根据错误指示管脚的电平值确定外部SRAM是否发生单粒子错误,响应于外部SRAM发生单粒子错误,锁存错误指示管脚的电平值,并向处理器发送中断信号;处理器响应于中断信号,基于锁存的错误指示管脚的电平值对外部SRAM发生的单粒子错误进行处理。从而,利用可编程器件,实现处理器对外部SRAM的单粒子错误的检测和处理。

Description

单粒子错误处理方法、系统及装置
技术领域
本申请涉及计算机技术领域中的星载计算机技术,尤其涉及一种单粒子错误处理方法、系统及装置。
背景技术
传统的星载计算机(又称为航天器计算机)对设备可靠性要求较高,对成本不太敏感,故一般选用价格昂贵的宇航级中央处理器(central processing unit,CPU)。宇航级CPU自带较为完整的错误检测与纠正(Error Detection And Correction,简称EDAC)功能,可外接外部静态随机存取存储器(Static Random-Access Memory,简称SRAM),并且能够很好地应对外部SRAM发生的单粒子错误,满足航天任务对星载计算机的要求。
随着商业航天公司的不断涌现,鉴于传统的星载计算机选用宇航级CPU价格高昂,越来越多的商业卫星的星载计算机选用工业级CPU或者汽车级CPU。这类CPU的片内SRAM、片内Flash具备EDAC功能,但片内SRAM的容量通常较小,不满足星载计算机对SRAM存储容量的要求,需外接容量较大的外部SRAM。为解决外部SRAM单粒子错误问题,已有方案是选择自带EDAC功能的SRAM。
然而,外部SRAM发生单粒子错误时,在星载计算机中的工业级CPU或者汽车级CPU中并不知情,尤其外部SRAM发生单粒子双错时,CPU会访问得到错误的数据,使得外部SRAM的使用受到限制(只能存储非关键数据),或者使用外部SRAM存储关键数据时星载计算机可能因为读取到错误数据而工作异常,甚至还可能导致航天器损坏。
发明内容
本申请提供一种单粒子错误处理方法、系统及装置,用以外部SRAM发生单粒子错误时处理器因不知情而访问得到错误数据的问题。
第一方面,本申请提供一种单粒子错误处理方法,应用于计算系统,所述计算系统包括处理器、可编程器件和至少一个具备错误检测及纠正EDAC功能的外部静态随机存取存储器SRAM,所述处理器分别连接所述可编程器件和外部SRAM,所述可编程器件连接所述外部SRAM上的错误指示管脚;
所述单粒子错误处理方法包括:
所述可编程器件对所述错误指示管脚的电平值进行采样;根据所述错误指示管脚的电平值确定所述外部SRAM是否发生单粒子错误;响应于所述外部SRAM发生单粒子错误,锁存所述错误指示管脚的电平值,并向所述处理器发送中断信号;
所述处理器响应于所述中断信号,基于锁存的所述错误指示管脚的电平值对所述外部SRAM发生的单粒子错误进行处理。
在一种可行的实现方式中,所述可编程器件根据所述错误指示管脚的电平值确定所述外部SRAM是否发生单粒子错误,包括:
响应于所述错误指示管脚的电平值为高电平,所述可编程器件确定所述外部SRAM发生单粒子错误;
响应于所述错误指示管脚的电平值为低电平,所述可编程器件确定所述外部SRAM未发生单粒子错误。
在一种可行的实现方式中,所述可编程器件还连接所述处理器上用于所述外部SRAM的片选管脚,所述根据所述错误指示管脚的电平值确定所述外部SRAM是否发生单粒子错误,包括:
所述可编程器件对所述片选管脚的电平值进行采样;
所述可编程器件响应于所述片选管脚的电平值为低电平,根据所述错误指示管脚的电平值确定所述外部SRAM是否发生单粒子错误。
在一种可行的实现方式中,所述错误指示管脚的数量为多个,所述处理器响应于所述中断信号,基于锁存的所述错误指示管脚的电平值对所述外部SRAM发生的单粒子错误进行处理,包括:
所述处理器响应于所述中断信号,获取已锁存的所述错误指示管脚的电平值;
所述处理器根据所述错误指示管脚的电平值,确定所述外部SRAM所发生的单粒子错误的目标错误类型;
所述处理器根据所述目标错误类型,对所述外部SRAM发生的单粒子错误进行处理;
其中,所述外部SRAM发生的单粒子错误的错误类型是通过出现高电平的错误指示管脚区分的,所述错误类型包括仅单粒子单错、仅单粒子双错和部分字节单粒子单错且部分字节单粒子双错中的至少一种。
在一种可行的实现方式中,所述错误指示管脚包括用于指示单粒子单错的第一错误管脚和用于指示单粒子双错的第二错误管脚,所述处理器根据所述错误指示管脚的电平值,确定所述外部SRAM所发生的单粒子错误的目标错误类型,包括:
如果所述第一错误管脚的电平值为高电平且所述第二错误管脚的电平值为低电平,则确定所述目标错误类型为仅单粒子单错;
如果所述第一错误管脚的电平值为低电平且所述第二错误管脚的电平值为高电平,则确定所述目标错误类型为仅单粒子双错;
如果所述第一错误管脚的电平值为高电平且所述第二错误管脚的电平值为高电平,则确定所述目标错误类型为部分字节单粒子单错且部分字节单粒子双错。
在一种可行的实现方式中,所述处理器根据所述目标错误类型,对所述外部SRAM发生的单粒子错误进行处理,包括:
所述处理器获取所述外部SRAM发生单粒子错误的数据地址;
如果所述目标错误类型为仅单粒子单错,则所述处理器对所述数据地址进行回读,并将回读得到的数值重新写入所述数据地址;或者,
如果所述目标错误类型为仅单粒子双错,或者,如果所述目标错误类型为部分字节单粒子单错且部分字节单粒子双错,则所述处理器向所述数据地址写入任意值。
在一种可行的实现方式中,还包括:
在将回读得到的数值重新写入所述数据地址后,清除所述处理器中的中断标志和所述可编程器件中的中断标志。
在一种可行的实现方式中,还包括:
在所述处理器向所述数据地址写入任意值后,所述处理器确定所述数据地址是否位于关键数据存储区域;
如果所述数据地址位于所述关键数据存储区域,则所述处理器自主执行复位操作。
第二方面,本申请提供一种计算系统,包括:
处理器、可编程器件和至少一个具备错误检测及纠正EDAC功能的外部静态随机存取存储器SRAM,所述处理器分别连接所述可编程器件和外部SRAM,所述可编程器件连接所述外部SRAM上的错误指示管脚;
所述可编程器件,用于对所述错误指示管脚的电平值进行采样;根据所述错误指示管脚的电平值确定所述外部SRAM是否发生单粒子错误;响应于所述外部SRAM发生单粒子错误,锁存所述错误指示管脚的电平值,并向所述处理器发送中断信号;
所述处理器,用于响应于所述中断信号,基于锁存的所述错误指示管脚的电平值对所述外部SRAM发生的单粒子错误进行处理。
在一种可行的实现方式中,所述可编程器件为现场可编程逻辑门阵列FPGA,所述FPGA为对单粒子不敏感的Flash型的FPGA,或者,所述FPGA为反熔丝型FPGA。
第三方面,本申请提供一种单粒子错误处理装置,应用于计算系统,所述计算系统包括处理器、可编程器件和至少一个具备错误检测及纠正EDAC功能的外部静态随机存取存储器SRAM,所述处理器分别连接所述可编程器件和外部SRAM,所述可编程器件连接所述外部SRAM上的错误指示管脚;单粒子错误处理装置包括:
接收单元,用于接收来自所述可编程器件的中断信号;其中,所述可编程器件用于对所述错误指示管脚的电平值进行采样,在基于所述错误指示管脚的电平值确定所述外部SRAM发生单粒子错误的情况下,锁存所述错误指示管脚的电平值发送所述中断信号;
处理单元,用于响应于所述中断信号,基于锁存的所述错误指示管脚的电平值,对所述外部SRAM发生的单粒子错误进行处理。
本申请提供的单粒子错误处理方法、系统及装置,应用于计算系统,在计算系统中,利用可编程器件对外部SRAM的错误指示管脚的电平值进行采样,并基于采样到的电平值确定外部SRAM是否发生单粒子错误,若发生单粒子错误,则可编程器件锁存错误指示管脚的电平值,并向处理器发送中断信号。处理器响应于中断信号,基于锁存的错误指示管脚的电平值对外部SRAM发生的单粒子错误进行处理。因此,通过可编程器件对外部SRAM发生的单粒子错误进行监测并反馈相应信号到处理器的方式,使得处理器及时得知外部SRAM发生的单粒子错误并对单粒子错误进行处理,避免处理器从外部SRAM读取到错误数据而不知情,且成本较低。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例适用的计算系统的结构示意图;
图2为本申请实施例提供的计算系统的结构示意图一;
图3为本申请实施例提供的单粒子错误处理方法的流程示意图一;
图4为本申请实施例提供的计算系统的结构示意图二;
图5为本申请实施例提供的计算系统的结构示意图三;
图6为本申请实施例提供的单粒子错误处理方法的流程示意图二;
图7为本申请实施例提供的计算系统的结构示意图四;
图8为本申请实施例提供的单粒子错误处理方法中处理器对单粒子错误的处理过程的流程示意图;
图9a为本申请实施例提供的外部SRAM的读时序的示例图;
图9b为本申请实施例提供的处理器访问外部SRAM的时序示例图;
图9c为本申请实施例提供的FPGA对错误指示管脚进行采样的时序示例图;
图10为本申请实施例提供的单粒子错误处理装置的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在传统的星载计算机中,宇航级CPU带有完整的EDAC功能,可外接40位宽的外部SRAM,其中32位宽用于存储有效数据,另外8位宽用于存储EDAC校验码。当外部SRAM发生单粒子单错(又称为单比特错误)且CPU读取发生单粒子单错的数据所在地址时,CPU会触发EDAC中断,并在EDAC中断中获取该地址,对该地址进行回写操作,实现对单粒子单错的修复。当外部SRAM发生单粒子双错(又称为双比特错误)且CPU读取发生单粒子双错的数据所在地址时,CPU会进入异常处理函数,由于单粒子双错无法被修复,CPU将该地址写入任意值后进行自主复位。
虽然宇航级CPU可以很好地处理外部SRAM发生的单粒子错误,但价格高昂,目前更倾向于在星载计算机中使用工业级CPU或者汽车级CPU。发明人发现,工业级CPU或者汽车级CPU可以对片内SRAM发生的单粒子错误进行及时处理,但是对外部SRAM发生的单粒子错误并不知情,而为了满足星载计算器对SRAM存储容量的需求,又不得不外接外部SRAM。
在相关技术中,可通过外接自带EDAC功能的外部SRAM,并通过周期性回写外部SRAM的方式来修复外部SRAM发生的单粒子单错。但该方式中,外部SRAM发生单粒子双错时,CPU还是不知情,星载计算机上的软件在访问该地址时还是可能会得到错误的数据。如果星载计算机仅在外部SRAM中存储非关键数据(如延时遥测数据、大文件上注暂存区等),则可以容忍数据出现错误,但如果星载计算机在外部SRAM中存储关键数据(例如任务堆栈、延时指令、引入闭环控制的数据等),则无法容忍关键数据出现错误。
因此,如何使得处理器及时发现外部SRAM发生的单粒子错误并进行处理,成了目前星载计算机方面亟需解决的技术问题。
为解决上述问题,本申请提供了一种单粒子错误处理方法、系统及装置。在本申请中,利用可编程器件,对具备EDAC功能的外部SRAM发生的单粒子错误进行监测,如果监测到外部SRAM发生单粒子错误,则可编程器件向处理器发送中断信号,以便处理器及时得知外部SRAM发生了单粒子错误并对外部SRAM发生的单粒子错误进行处理。可见,基于本申请,借助可编程器件和中断方式,实现了处理器对外部SRAM的监控和及时处理,避免处理器读取到错误数据,而且该方法的硬件成本较低。
本申请提供的单粒子错误处理方法,可以适用于图1所示的计算系统,尤其是星载计算机的计算系统。如图1所示,计算系统包括处理器和外部SRAM。其中,处理器连接外部SRAM,星载计算机上的软件在运行时,可读取外部SRAM中存储的数据。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
参考图2,图2为本申请实施例提供的计算系统的结构示意图一。
如图2所示,计算系统包括处理器、可编程器件和至少一个具备EDAC功能的外部SRAM(图1以1个为例)。其中,处理器分别连接可编程器件和外部SRAM,可编程器件连接外部SRAM。进一步的,可编程器件连接外部SRAM上的错误指示管脚,其中,错误指示管脚为图1中的ERR管脚。
其中,可编程器件用于:对错误指示管脚的电平值进行采样;根据错误指示管脚的电平值确定外部SRAM是否发生单粒子错误;响应于外部SRAM 发生单粒子错误,锁存错误指示管脚的电平值,并向处理器发送中断信号。
其中,处理器用于:响应于来自可编程器件的中断信号,基于可编程器件中锁存的错误指示管脚的电平值对外部SRAM发生的单粒子错误进行处理。
基于图2所示的计算系统,参考图3,图3为本申请实施例提供的单粒子错误处理方法的流程示意图一。如图3所示,单粒子错误处理方法包括:
S301、可编程器件对错误指示管脚的电平值进行采样;根据错误指示管脚的电平值确定外部SRAM是否发生单粒子错误;响应于外部SRAM发生单粒子错误,锁存错误指示管脚的电平值,并向处理器发送中断信号。
本实施例中,由于外部SRAM具备EDAC功能,外部SRAM发生单粒子错误时错误指示管脚的电平值与外部SRAM未发生单粒子错误时的错误指示管脚的电平值不同。因此,可编程器件可对错误指示管脚的电平值进行采样,根据错误指示管脚的电平值,来确定外部SRAM是否发生单粒子错误,实现对外部SRAM是否发生单粒子错误的监控。
本实施例中,可编程器件中可设置寄存器,该寄存器用于存储外部SRAM发生的单粒子错误的错误信息,用于处理器对单粒子错误进行错误检测及纠正,因此,该寄存器又可称为EDAC错误信息寄存器。其中,单粒子错误的错误信息包括外部SRAM发生单粒子错误时错误指示管脚的电平值。因此,可编程器件确定外部SRAM发生单粒子错误的情况下,可将错误指示管脚的电平值锁存至寄存器中,并向处理器发送中断信号。其中,中断信号用于向处理器指示外部SRAM发生单粒子错误。
S302、处理器响应于中断信号,基于锁存的错误指示管脚的电平值对外部SRAM发生的单粒子错误进行处理。
本实施例中,处理器在接收到来自可编程器件的中断信号后,可进入对外部SRAM的单粒子错误进行处理的中断程序(可称为外部SRAM EDCA中断处理程序)。在该中断处理程序中,处理器获取可编程器件已锁存的错误指示管脚的电平值,对该电平值所反映出的单粒子错误进行处理,例如,对单粒子错误进行修复、写入任意值、复位等处理操作。
本申请实施例中,可编程器件通过对外部SRAM的错误指示管脚进行采样,对外部SRAM是否发生单粒子错误的监测,通过中断信号告知处理器,实现处理器对外部SRAM是否发生单粒子错误的监测和及时处理,避免外部SRAM发生单粒子错误时处理器因不知情而读取到错误数据。
在一些实施例中,外部SRAM 发生单粒子错误时,错误指示管脚的电平值为高电平,外部SRAM未发生单粒子错误时,错误指示管脚的电平值为低电平。因此,在一种可能的实现方式中,可编程器件响应于错误指示管脚的电平值为高电平,确定外部SRAM发生单粒子错误;可编程器件响应于错误指示管脚的电平值为低电平,确定外部SRAM未发生单粒子错误。
参考图4,图4为本申请实施例提供的计算系统的结构示意图二。
如图4所示,在图2所示计算系统的基础上,可编程器件连接处理器上的中断管脚(在图4中未标注出),可编程器件通过中断管脚向处理器发送中断信号。可编程器件还连接处理器上用于可编程器件的片选管脚(在图4中未标注出),处理器通过该片选管脚向可编程器件发送片选信号CS1。可编程器件还连接处理器上用于外部SRAM的片选管脚(在图4中未标注出),该片选管脚还连接外部SRAM,处理器通过该片选管脚向外部SRAM发送片选信号CS2。所以,处理器上用于可编程器件的片选管脚的电平值为片选信号CS1的电平值,处理器上用于外部SRAM的片选管脚的电平值为片选信号CS2的电平值。
在一些实施例中,基于图4所示的计算系统,可编程器件用于:对外部SRAM的错误指示管脚的电平值和处理器上针对外部SRAM的片选管脚的电平值进行采样;响应于该片选管脚的电平值为低电平,根据错误指示管脚的电平值,确定外部SRAM是否发生单粒子错误。
在一种可能的实现方式中,在处理器上针对外部SRAM的片选管脚的电平值为低电平的情况下:可编程器件响应于外部SRAM上的错误指示管脚的电平值为高电平,确定外部SRAM发生单粒子错误;可编程器件响应于错误指示管脚的电平值为低电平,确定外部SRAM未发生单粒子错误。
其中,处理器上针对外部SRAM的片选管脚的电平值为低电平,表示外部SRAM处于工作状态,在该状态下,处理器可对外部SRAM进行数据写入、数据读出等操作。因当外部SRAM未处于工作状态时,SRAM的错误指示管脚不能反映SRAM是否发生单粒子错误,所以在外部SRAM处于工作状态下,可编程器件对外部SRAM是否发生单粒子错误进行监测。
在一些实施例中,外部SRAM带有EDAC功能,所以外部SRAM可具备以下特性:能够纠正单粒子单错且能发现单粒子双错;具备多个错误指示管脚,多个错误指示管脚的电平值用于反映外部SRAM是否发生单粒子错误以及所发生的单粒子错误的错误类型。
因此,参考图5,图5为本申请实施例提供的计算系统的结构示意图三。如图5所示,在前述实施例所示的计算系统的基础上,以基于图4所示计算系统为例,外部SRAM上错误指示管脚的数量为多个,其中,图5中外部SRAM上有两个错误指示管脚:ERR1管脚、ERR2管脚。
基于图5所示的计算系统,参考图6,图6为本申请实施例提供的单粒子错误处理方法的流程示意图二。如图6所示,单粒子错误处理方法包括:
S601、可编程器件对错误指示管脚的电平值进行采样;根据错误指示管脚的电平值确定外部SRAM是否发生单粒子错误;响应于外部SRAM发生单粒子错误,锁存错误指示管脚的电平值,并向处理器发送中断信号。
一示例中,可编程器件对多个错误指示管脚的电平值进行采样,根据多个错误指示管脚的电平值,确定外部SRAM是否发生单粒子错误。
可选的,如果所有错误指示管脚的电平值均为低电平,则确定外部SRAM未发生单粒子错误,否则确定外部SRAM发生单粒子错误。
又一示例中,可编程器件对可多个错误指示管脚的电平值和处理器上用于外部SRAM的片选管脚进行采样,基于多个错误指示管脚的电平值和该片选管脚的电平值,确定外部SRAM是否发生单粒子错误。
可选的,如果处理器上用于外部SRAM的片选管脚的电平值为低电平且多个错误指示管脚中存在至少一个错误指示管脚的电平值为高电平(例如,图5中ERR1管脚的电平值为高电平或者ERR2管脚的电平值为高电平),则确定外部SRAM发生单粒子错误,否则确定外部SRAM未发生单粒子错误。
S602、处理器响应于中断信号,获取已锁存的错误指示管脚的电平值;根据错误指示管脚的电平值,确定外部SRAM所发生的单粒子错误的目标错误类型;根据目标错误类型,对外部SRAM发生的单粒子错误进行处理。
其中,外部SRAM发生的单粒子错误的错误类型是通过出现高电平的错误指示管脚区分的,错误类型包括仅单粒子单错、仅单粒子双错和部分字节单粒子单错且部分字节单粒子双错中的至少一种。仅单粒子单错是指外部SRAM仅发生单粒子单错,仅单粒子双错是指外部SRAM仅发生单粒子双错,部分字节单粒子单错且部分字节单粒子双错是指外部SRAM中部分字节发生单粒子单错,另一部分字节发生单粒子双错。
本实施例中,处理器在接收到用于指示外部SRAM发生单粒子错误的中断信号后,从可编程器件中获取已锁存的错误指示管脚的电平值。由于错误指示管脚的电平值可以反映外部SRAM发生的单粒子错误的错误类型,在处理器中可预先设置错误指示管脚的电平值与单粒子错误的错误类型的对应关系,处理器在获取已锁存的错误指示管脚的电平值后,在该对应关系中,查找并确定外部SRAM发生的单粒子错误的错误类型,为便于区分,将该错误类型称为目标错误类型。处理器按照目标错误类型的单粒子错误的处理方式,对外部SRAM发生的单粒子错误进行处理。
本申请实施例中,利用可编程器件对外部SRAM的多个错误指示管脚的电平值进行采样,不仅实现了对外部SRAM是否发生单粒子错误的监测,还实现了对外部SRAM发生的多种错误类型的单粒子错误的监测,处理器能够按照外部SRAM发生的单粒子错误的错误类型,有针对性地对外部SRAM发生的单粒子错误进行处理,提高了单粒子错误的处理效果。
在一些实施例中,错误指示管脚包括用于指示单粒子单错的第一错误管脚和用于指示单粒子双错的第二错误管脚,换句话说,第一错误管脚出现高电平则说明外部SRAM发生单粒子单错,第二错误管脚出现高电平则说明外部SRAM发生单粒子双错。其中,第一错误管脚和第二错误管脚为不同的错误指示管脚。基于此,有如下至少一种情况:
情况一:如果第一错误管脚的电平值和第二错误管脚的电平值均为低电平,则可编程器件确定外部SRAM未发生单粒子错误。
情况二:如果第一错误管脚的电平值为高电平且第二错误管脚的电平值为低电平,则可编程器件确定外部SRAM发生单粒子错误,对错误指示管脚的电平值进行锁存,并向处理器发送中断信号。处理器响应于中断信号,根据可编程器件锁存的电平值,确定目标错误类型为仅单粒子单错,按照单粒子单错,对外部SRAM发生的单粒子错误进行处理。
情况三:如果第一错误管脚的电平值为低电平且第二错误管脚的电平值为高电平,则可编程器件确定外部SRAM发生单粒子错误,对错误指示管脚的电平值进行锁存,并向处理器发送中断信号。处理器响应于中断信号,根据可编程器件锁存的电平值,确定目标错误类型为仅单粒子双错,按照单粒子双错,对外部SRAM发生的单粒子错误进行处理。
情况四:如果第一错误管脚的电平值为高电平且第二错误管脚的电平值为低电平,则可编程器件确定外部SRAM发生单粒子错误,对错误指示管脚的电平值进行锁存,并向处理器发送中断信号。处理器响应于中断信号,根据可编程器锁存的电平值,确定目标错误类型为部分字节单粒子单错且部分字节单粒子双错,按照单粒子双错,对外部SRAM中的单粒子错误进行处理。
以图5为例,多个错误指示管脚的电平值与外部SRAM发生的单粒子错误的错误类型的对应关系可如下表所示:
ERR1 ERR2 说明
0 0 无单粒子错误
1 0 单粒子单错
0 1 单粒子双错
1 1 部分字节单粒子单错且部分字节单粒子双错
其中,0表示低电平,1表示高电平。
可选的,外部SRAM还可以具备如下特性:每个字节独立进行EDAC校验。如此,可以检测出单个字节是否发生单粒子错误。此时,部分字节单粒子单错且部分字节单粒子双错这一错误类型可包括一个字节单粒子单错且另一个字节单粒子双错,即外部SRAM具备更准确的EDAC能力。
参考图7,图7为本申请实施例提供的计算系统的结构示意图四。
如图7所示,在前述实施例所示的计算系统的基础上,以基于图5所示的计算系统为例,处理器通过外部存储器接口(External Memory Interface,简称EMIF)(图7中未标注出)连接外部SRAM和可编程器件。EMIF包括用于外部SRAM的片选管脚(图7中未标注出)、用于可编程器件的片选管脚(图7中未标注出)。外部SRAM与用于外部SRAM的片选管脚连接,可编程器件与用于可编程器件的片选管脚和用于外部SRAM的片选管脚连接。EMIF还包括数据管脚、地址管脚、写管脚、读管脚,外部SRAM和可编程器件连接相同的数据管脚、相同的地址管脚、相同的写管脚以及相同的读管脚(图7中未标注出)。其中,数据管脚用于传输数据,地址管脚用于传输数据的地址,写管脚用于传输写信号(图7中的we),读管脚用于传输读信号(图7中的oe)。
本实施例中,处理器可通过EMIF实现从外部SRAM中读数据、写数据等操作,在这些操作的过程中,处理器通过写管脚向外部SRAM发送写指令,或者通过读管脚向外部SRAM发送读指令,通过地址管脚、数据管脚与外部SRAM进行地址、数据的传输。可编程器件在确定外部SRAM发生单粒子错误的情况下,可通过地址管脚获取得到外部SRAM发生单粒子错误的数据地址,对该数据地址和外部SRAM上错误指示管脚的电平值进行锁存,向处理器发送中断信号。所以,除了错误指示管脚的电平值之外,单粒子错误的错误信息还包括外部SRAM上发生单粒子错误的数据地址。
本实施例中,处理器响应于中断信号,获取外部SRAM锁存的发生单粒子错误的数据地址和错误指示管脚的电平值,根据该数据地址和数据指示管脚的电平值,对外部SRAM发生的单粒子错误进行处理。
因此,在一些实施例中,基于图7所示的计算系统,处理器根据目标错误类型,对外部SRAM发生的单粒子错误进行处理,包括:处理器获取外部SRAM发生单粒子错误的数据地址;如果目标错误类型为仅单粒子单错,则处理器对数据地址进行回读,并将回读得到的数值重新写入数据地址;或者,如果目标错误类型为仅单粒子双错,或者,如果目标错误类型为部分字节单粒子单错且部分字节单粒子双错,则处理器向数据地址写入任意值。
本实施例中,处理器在收到指示外部SRAM发生单粒子错误的中断信号之后,从可编程器件中获取已锁存的发生单粒子错误的数据地址和错误指示管脚的电平值,根据错误指示管脚的电平值,确定外部SRAM发生单粒子错误的目标错误类型。如果目标错误类型为仅单粒子单错,则处理器对发生单粒子错误的数据地址进行回读,将回读得到的数值重选写入该数据地址,实现对单粒子错误的修复,即利用EDAC方式对单粒子单错进行修复。如果目标错误类型中出现单粒子双错(其中,包括目标错误类型为仅单粒子双错、目标错误类型为部分字节单粒子单错且部分字节单粒子双错的情形),由于在EDAC中单粒子双错无法被纠正,处理器可向发生单粒子错误的数据地址写入任意值,即利用EDAC方式对单粒子双错进行处理。
可选的,考虑到在处理器的片内SRAM的存储空间不足的情况下,外部SRAM可能用于存储关键数据,为避免单粒子错误包括单粒子双错的情况下处理器读取到错误的关键数据或者未读取到关键数据而导致关键数据缺失,可在外部SRAM中预先设置关键数据存储区域,在处理器中记录外部SRAM上的关键数据存储区域。所以,处理器可针对发生单粒子双错的数据区域是否位于关键数据存储区域进行区别处理:
在确定目标错误类型为单粒子双错的情形下,或者在确定目标错误类型为部分字节单粒子单错且部分字节单粒子双错的情形下,处理器在发生单粒子错误的数据地址写入任意值之后,确定该数据地址是否位于关键数据存储区域;如果该数据地址位于关键数据存储区域,则处理器自主进行复位操作,复位操作为初始化操作;否则,无需对处理器进行复位操作。
在一些实施例中,中断信号携带有中断标志。
基于中断信号携带有中断标志,在一种可能的实现方式中,处理器接收到中断信号后,可根据中断信号的中断标志确定该中断信号是否为用于指示外部SRAM发生单粒子错误的中断信号,即确定外部SRAM是否发生单粒子错误。其中,不同中断信号的中断标志不同。
基于中断信号携带有中断标志,在一种可能的实现方式中,在处理器处理完成外部SRAM发生的单粒子错误之后,即在将回读得到的数值重新写入单粒子错误的数据地址之后,或者在单粒子错误的数据地址写入任意值之后,可清除处理器中的中断标志和可编程器件的中断标志。
其中,清除中断标志即释放中断标志。
本实施例中,处理器在释放中断标志之后,可向FPGA发送释放中断标志的指示信号,FPGA接收到该指示信号后也释放中断标志。
参考图8,图8为本申请实施例提供的单粒子错误处理方法中处理器对单粒子错误的处理过程的流程示意图,该过程的执行主体为处理器,在下述步骤中不一一赘述。如图8所示,该处理过程包括:
S801、从中断状态寄存器中读取中断标志。
S802、根据中断标志确定外部SRAM发生单粒子错误。
S803、从可编程器件的寄存器中读取单粒子错误的错误信息。
S804、根据错误信息,确定外部SRAM发生的单粒子错误的目标错误类型和发生单粒子错误的数据地址。
S805、确定目标错误类型是否为单粒子单错。
其中,如果目标错误类型为单粒子单错,则执行S806,否则执行S807。
S806、执行数据地址回读,将回读的数值写入该数据地址。
其中,在S806之后,可执行S811。
S807、确定目标错误类型为单粒子双错或者部分字节单粒子单错且部分字节单粒子双错。
S808、在数据地址中写入任意值。
S809、确定数据地址是否位于关键数据存储区域。
如果数据地址位于关键数据存储区域,则执行S810,否则执行S811。
S810、对处理器执行复位操作。
S811、清除处理器中的中断标志。
S812、清除FPGA中的中断标志。
其中,上述步骤可参照前述实施例的描述,不再赘述。
在一些实施例中,可编程器件可在处理器对外部SRAM进行数据读取的有效时段内(可理解为外部SRAM上的错误指示管脚的有效时段内),对外部SRAM上的错误指示管脚的电平值进行采样。
可选的,考虑到处理器对外部SRAM进行数据读取的有效时段受外部SRAM的读时序、处理器访问外部SRAM的时序的影响,因此,基于图7所示的计算系统,可编程器件可在检测到读管脚的电平值为低电平时延迟预设时长之后,再对外部SRAM的错误指示管脚的电平值进行采样。
其中,读管脚的电平值为低电平表示读信号有效,即处理器在读取外部SRAM中的数据。可由有经验的人员在可编程器件中预先设置预设时长。
参考图9a,图9a为本申请实施例提供的外部SRAM的读时序的示例图。
在图9a中,EMIF_CS表示处理器针对外部SRAM的片选信号,EMIF_OE表示处理器对外部SRAM的读信号,UB、LB分别表示高字节、低字节。
如图9a所示,在地址信号(即图9a中的地址)、片选信号、读信号、高字节/低字节信号有效(即为低电平时,其中,地址信号是高低电平交换)时,要隔一段时间t1(该段时间内数据信号要经过一个数据无效的低阻态),数据信号才有效,即处理器从外部SRAM中读取有效数据。在地址信号、片选信号、读信号、高字节/低字节信号无效(即为高电平时,其中,地址信号是高低电平再次交换)时,数据信号经过一段时间t2后从数据有效状态进入高阻态。数据信号的有效时间段即错误指示管脚的有效时间段。
其中,在图9a中,以t1为7纳秒(ns)、t2为3ns为例。
参考图9b,图9b为本申请实施例提供的处理器访问外部SRAM的时序示例图。
在图9b中,EMIF_CLK表示处理器上EMIF的时钟信号,EMIF_CS表示处理器针对外部SRAM的片选信号,EMIF_OE表示处理器对外部SRAM的读信号,EMIF_WE表示处理器对外部SRAM的写信号。处理器访问外部SRAM的过程中,建立时间为EMIF总线的一个时钟,选通(Strobe)时间为EMIF总线的两个时钟,保持时间为EMIF总线的一个时钟。
如图9b所示,EMIF_OE有效(即低电平)之后,隔一段时间,数据信号才有效,EMIF_OE无效(即高电平)之后,隔一段时间,数据信号才无效。数据信号的有效时间段即错误指示管脚的有效时间段。
参考图9c,图9c为本申请实施例提供的FPGA对错误指示管脚进行采样的时序示例图。
在图9c中,EMIF_CLK表示处理器上EMIF的时钟信号,EMIF_CS表示处理器针对外部SRAM的片选信号,EMIF_OE表示处理器对外部SRAM的读信号,EMIF_WE表示处理器对外部SRAM的写信号。
如图9c所示,在EMIF_OE有效后的t1时间之后,才是数据信号的有效时间,即错误指示管脚的有效时间。所以,FPGA需要在EMIF_OE有效后的t1时间(例如7ns)之后,再对外部SRAM的错误指示管脚进行采样。
在一些实施例中,基于前述任一实施例,可编程器件为现场可编程逻辑门阵列(Field-Programmable Gate Array,FPGA),利用FPGA成本较小、可灵活配置且能够实现复杂功能的特点,降低计算系统的成本,并有效地提高单粒子错误处理效果。
可选的,FPGA可为对单粒子不敏感的Flash型的FPGA,或者FPGA为反熔丝型FPGA,该两种FPGA的稳定性较高。
可选的,FPGA可为SRAM型的FPGA,但其稳定性不如单粒子不敏感的Flash型的FPGA和反熔丝型FPGA。
在一些实施例中,基于前述任一实施例,可编程器件为复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)。
下述为本申请装置实施例,可以用于执行本申请对应的方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请对应的方法实施例。
参考图10,图10为本申请实施例提供的单粒子错误处理装置的结构示意图。该单粒子错误处理装置应用于计算系统,计算系统包括处理器、可编程器件和至少一个具备错误检测及纠正EDAC功能的外部SRAM,处理器分别连接可编程器件和外部SRAM,可编程器件连接外部SRAM上的错误指示管脚。如图10所示,本实施例提供的单粒子错误处理装置,包括:
接收单元1001,用于接收来自可编程器件的中断信号。可编程器件用于对错误指示管脚的电平值进行采样,在基于错误指示管脚的电平值确定外部SRAM发生单粒子错误的情况下,锁存错误指示管脚的电平值发送中断信号。
处理单元1002,用于响应于中断信号,基于锁存的错误指示管脚的电平值,对外部SRAM发生的单粒子错误进行处理。
在一种可行的实现方式中,外部SRAM上的错误指示管脚的数量为多个。此时,处理单元1002具体用于:响应于中断信号,获取已锁存的错误指示管脚的电平值;根据错误指示管脚的电平值,确定外部SRAM所发生的单粒子错误的目标错误类型;根据目标错误类型,对外部SRAM发生的单粒子错误进行处理;其中,外部SRAM发生的单粒子错误的错误类型是通过出现高电平的错误指示管脚区分的,错误类型包括仅单粒子单错、仅单粒子双错和部分字节单粒子单错且部分字节单粒子双错中的至少一种。
在一种可行的实现方式中,错误指示管脚包括用于指示单粒子单错的第一错误管脚和用于指示单粒子双错的第二错误管脚,处理单元1002具体用于:如果第一错误管脚的电平值为高电平且第二错误管脚的电平值为低电平,则确定目标错误类型为仅单粒子单错;如果第一错误管脚的电平值为低电平且第二错误管脚的电平值为高电平,则确定目标错误类型为仅单粒子双错;如果第一错误管脚的电平值为高电平且第二错误管脚的电平值为高电平,则确定目标错误类型为部分字节单粒子单错且部分字节单粒子双错。
在一种可行的实现方式中,处理单元1002具体用于:获取外部SRAM发生单粒子错误的数据地址;如果目标错误类型为仅单粒子单错,则对数据地址进行回读,并将回读得到的数值重新写入数据地址;或者,如果目标错误类型为仅单粒子双错,或者,如果目标错误类型为部分字节单粒子单错且部分字节单粒子双错,则向数据地址写入任意值。
在一种可行的实现方式中,处理单元1002具体用于:在将回读得到的数值重新写入数据地址后,清除中断标志。
在一种可行的实现方式中,处理单元1002具体用于:在向数据地址写入任意值后,确定数据地址是否位于关键数据存储区域;如果数据地址位于关键数据存储区域,则对处理器执行复位操作。
值得说明的,上述各实施例提供的单粒子错误处理装置,可用于执行上述任一实施例提供的单粒子错误处理方法中的各步骤,具体实现方式和技术效果类似,这里不再赘述。
本申请所提供的上述各装置实施例仅仅是示意性的,其中的模块划分仅仅是一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个模块可以结合或者可以集成到另一个系统。各个模块相互之间的耦合可以是通过一些管脚实现,这些管脚通常是电性通信管脚,但是也不排除可能是机械管脚或其它的形式管脚。因此,作为分离部件说明的模块可以是或者也可以不是物理上分开的,既可以位于一个地方,也可以分布到同一个或不同设备的不同位置上。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

Claims (11)

1.一种单粒子错误处理方法,其特征在于,应用于计算系统,所述计算系统包括处理器、可编程器件和至少一个具备错误检测及纠正EDAC功能的外部静态随机存取存储器SRAM,所述处理器分别连接所述可编程器件和外部SRAM,所述可编程器件连接所述外部SRAM上的错误指示管脚;
所述单粒子错误处理方法包括:
所述可编程器件对所述错误指示管脚的电平值进行采样;根据所述错误指示管脚的电平值确定所述外部SRAM是否发生单粒子错误;响应于所述外部SRAM发生单粒子错误,锁存所述错误指示管脚的电平值,并向所述处理器发送中断信号;
所述处理器响应于所述中断信号,基于锁存的所述错误指示管脚的电平值对所述外部SRAM发生的单粒子错误进行处理。
2.根据权利要求1所述的单粒子错误处理方法,其特征在于,所述可编程器件根据所述错误指示管脚的电平值确定所述外部SRAM是否发生单粒子错误,包括:
响应于所述错误指示管脚的电平值为高电平,所述可编程器件确定所述外部SRAM发生单粒子错误;
响应于所述错误指示管脚的电平值为低电平,所述可编程器件确定所述外部SRAM未发生单粒子错误。
3.根据权利要求1所述的单粒子错误处理方法,其特征在于,所述可编程器件还连接所述处理器上用于所述外部SRAM的片选管脚,所述根据所述错误指示管脚的电平值确定所述外部SRAM是否发生单粒子错误,包括:
所述可编程器件对所述片选管脚的电平值进行采样;
所述可编程器件响应于所述片选管脚的电平值为低电平,根据所述错误指示管脚的电平值确定所述外部SRAM是否发生单粒子错误。
4.根据权利要求1至3中任一项所述的单粒子错误处理方法,其特征在于,所述错误指示管脚的数量为多个,所述处理器响应于所述中断信号,基于锁存的所述错误指示管脚的电平值对所述外部SRAM发生的单粒子错误进行处理,包括:
所述处理器响应于所述中断信号,获取已锁存的所述错误指示管脚的电平值;
所述处理器根据所述错误指示管脚的电平值,确定所述外部SRAM所发生的单粒子错误的目标错误类型;
所述处理器根据所述目标错误类型,对所述外部SRAM发生的单粒子错误进行处理;
其中,所述外部SRAM发生的单粒子错误的错误类型是通过出现高电平的错误指示管脚区分的,所述错误类型包括仅单粒子单错、仅单粒子双错和部分字节单粒子单错且部分字节单粒子双错中的至少一种。
5.根据权利要求4所述的单粒子错误处理方法,其特征在于,所述错误指示管脚包括用于指示单粒子单错的第一错误管脚和用于指示单粒子双错的第二错误管脚,所述处理器根据所述错误指示管脚的电平值,确定所述外部SRAM所发生的单粒子错误的目标错误类型,包括:
如果所述第一错误管脚的电平值为高电平且所述第二错误管脚的电平值为低电平,则确定所述目标错误类型为仅单粒子单错;
如果所述第一错误管脚的电平值为低电平且所述第二错误管脚的电平值为高电平,则确定所述目标错误类型为仅单粒子双错;
如果所述第一错误管脚的电平值为高电平且所述第二错误管脚的电平值为高电平,则确定所述目标错误类型为部分字节单粒子单错且部分字节单粒子双错。
6.根据权利要求4所述的单粒子错误处理方法,其特征在于,所述处理器根据所述目标错误类型,对所述外部SRAM发生的单粒子错误进行处理,包括:
所述处理器获取所述外部SRAM发生单粒子错误的数据地址;
如果所述目标错误类型为仅单粒子单错,则所述处理器对所述数据地址进行回读,并将回读得到的数值重新写入所述数据地址;或者,
如果所述目标错误类型为仅单粒子双错,或者,如果所述目标错误类型为部分字节单粒子单错且部分字节单粒子双错,则所述处理器向所述数据地址写入任意值。
7.根据权利要求6所述的单粒子错误处理方法,其特征在于,还包括:
在将回读得到的数值重新写入所述数据地址后,清除所述处理器中的中断标志和所述可编程器件中的中断标志。
8.根据权利要求6所述的单粒子错误处理方法,其特征在于,还包括:
在所述处理器向所述数据地址写入任意值后,所述处理器确定所述数据地址是否位于关键数据存储区域;
如果所述数据地址位于所述关键数据存储区域,则所述处理器自主执行复位操作。
9.一种计算系统,其特征在于,包括:
处理器、可编程器件和至少一个具备错误检测及纠正EDAC功能的外部静态随机存取存储器SRAM,所述处理器分别连接所述可编程器件和外部SRAM,所述可编程器件连接所述外部SRAM上的错误指示管脚;
所述可编程器件,用于对所述错误指示管脚的电平值进行采样;根据所述错误指示管脚的电平值确定所述外部SRAM是否发生单粒子错误;响应于所述外部SRAM发生单粒子错误,锁存所述错误指示管脚的电平值,并向所述处理器发送中断信号;
所述处理器,用于响应于所述中断信号,基于锁存的所述错误指示管脚的电平值对所述外部SRAM发生的单粒子错误进行处理。
10.根据权利要求9所述的计算系统,其特征在于,所述可编程器件为现场可编程逻辑门阵列FPGA,所述FPGA为对单粒子不敏感的Flash型的FPGA,或者,所述FPGA为反熔丝型FPGA。
11.一种单粒子错误处理装置,其特征在于,应用于计算系统,所述计算系统包括处理器、可编程器件和至少一个具备错误检测及纠正EDAC功能的外部静态随机存取存储器SRAM,所述处理器分别连接所述可编程器件和外部SRAM,所述可编程器件连接所述外部SRAM上的错误指示管脚;
所述单粒子错误处理装置包括:
接收单元,用于接收来自所述可编程器件的中断信号;其中,所述可编程器件用于对所述错误指示管脚的电平值进行采样,在基于所述错误指示管脚的电平值确定所述外部SRAM发生单粒子错误的情况下,锁存所述错误指示管脚的电平值发送所述中断信号;
处理单元,用于响应于所述中断信号,基于锁存的所述错误指示管脚的电平值,对所述外部SRAM发生的单粒子错误进行处理。
CN202210062985.5A 2022-01-20 2022-01-20 单粒子错误处理方法、系统及装置 Active CN114090327B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210062985.5A CN114090327B (zh) 2022-01-20 2022-01-20 单粒子错误处理方法、系统及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210062985.5A CN114090327B (zh) 2022-01-20 2022-01-20 单粒子错误处理方法、系统及装置

Publications (2)

Publication Number Publication Date
CN114090327A true CN114090327A (zh) 2022-02-25
CN114090327B CN114090327B (zh) 2022-05-17

Family

ID=80308849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210062985.5A Active CN114090327B (zh) 2022-01-20 2022-01-20 单粒子错误处理方法、系统及装置

Country Status (1)

Country Link
CN (1) CN114090327B (zh)

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0833725A1 (en) * 1996-04-12 1998-04-08 Domenico Christofaro A process for the realization of plates and panels consisting of exhausted olive husks of crushed olive stones and polypropylene, and derived product
CN1632757A (zh) * 2005-01-10 2005-06-29 中国航天时代电子公司第七七一研究所 空间计算机抗单粒子翻转的存储器纠检错与自动回写方法
CN1635477A (zh) * 2003-12-30 2005-07-06 中国科学院空间科学与应用研究中心 实时差错检测与纠错芯片
CN101561477A (zh) * 2009-05-15 2009-10-21 中国人民解放军国防科学技术大学 现场可编程逻辑门阵列中单粒子翻转的检测方法及装置
CN101916213A (zh) * 2010-08-05 2010-12-15 中国航天科技集团公司第九研究院第七七一研究所 基于arm处理器的空间防护装置及方法
CN102385936A (zh) * 2011-09-16 2012-03-21 中国科学院微电子研究所 基于汉明码对静态随机存储器多位翻转进行容错的方法
CN102521066A (zh) * 2011-11-15 2012-06-27 北京空间飞行器总体设计部 星载计算机空间环境事件容错方法
CN103984630A (zh) * 2014-05-27 2014-08-13 中国科学院空间科学与应用研究中心 一种基于at697处理器的单粒子翻转故障处理方法
CN104597807A (zh) * 2014-12-10 2015-05-06 深圳航天东方红海特卫星有限公司 一种星载综合电子cpu翻转加固系统及方法
CN104866387A (zh) * 2015-06-23 2015-08-26 上海航天测控通信研究所 基于erc32处理器内存数据抗干扰的存储方法及系统
CN104932954A (zh) * 2015-07-01 2015-09-23 西北工业大学 微小卫星fpga关键数据保护方法
US20150293257A1 (en) * 2014-04-10 2015-10-15 Mueller-Elektronik Gmbh & Co. Kg Downpipe sensor and method for single grain recognition
CN107291570A (zh) * 2017-06-23 2017-10-24 哈尔滨工业大学 基于Zynq‑7000的片上存储器抗单粒子翻转防护方法
CN108509300A (zh) * 2018-04-13 2018-09-07 上海微小卫星工程中心 一种基于卫星星务系统的单粒子自纠正方法
US10503584B1 (en) * 2016-06-23 2019-12-10 Triad National Security, Llc Low cost, hardened single board computer for command and data handling
CN112181711A (zh) * 2020-09-15 2021-01-05 浙江吉利控股集团有限公司 一种低轨星载dsp抑制单粒子翻转的纠错系统及方法
CN112256463A (zh) * 2020-09-30 2021-01-22 北京控制工程研究所 保证Cache与片外存储器内容一致性的单粒子软错误处理方法
CN113012749A (zh) * 2021-01-06 2021-06-22 北京航空航天大学 一种Flash存储器单粒子效应检测方法

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0833725A1 (en) * 1996-04-12 1998-04-08 Domenico Christofaro A process for the realization of plates and panels consisting of exhausted olive husks of crushed olive stones and polypropylene, and derived product
CN1635477A (zh) * 2003-12-30 2005-07-06 中国科学院空间科学与应用研究中心 实时差错检测与纠错芯片
CN1632757A (zh) * 2005-01-10 2005-06-29 中国航天时代电子公司第七七一研究所 空间计算机抗单粒子翻转的存储器纠检错与自动回写方法
CN101561477A (zh) * 2009-05-15 2009-10-21 中国人民解放军国防科学技术大学 现场可编程逻辑门阵列中单粒子翻转的检测方法及装置
CN101916213A (zh) * 2010-08-05 2010-12-15 中国航天科技集团公司第九研究院第七七一研究所 基于arm处理器的空间防护装置及方法
CN102385936A (zh) * 2011-09-16 2012-03-21 中国科学院微电子研究所 基于汉明码对静态随机存储器多位翻转进行容错的方法
CN102521066A (zh) * 2011-11-15 2012-06-27 北京空间飞行器总体设计部 星载计算机空间环境事件容错方法
US20150293257A1 (en) * 2014-04-10 2015-10-15 Mueller-Elektronik Gmbh & Co. Kg Downpipe sensor and method for single grain recognition
CN103984630A (zh) * 2014-05-27 2014-08-13 中国科学院空间科学与应用研究中心 一种基于at697处理器的单粒子翻转故障处理方法
CN104597807A (zh) * 2014-12-10 2015-05-06 深圳航天东方红海特卫星有限公司 一种星载综合电子cpu翻转加固系统及方法
CN104866387A (zh) * 2015-06-23 2015-08-26 上海航天测控通信研究所 基于erc32处理器内存数据抗干扰的存储方法及系统
CN104932954A (zh) * 2015-07-01 2015-09-23 西北工业大学 微小卫星fpga关键数据保护方法
US10503584B1 (en) * 2016-06-23 2019-12-10 Triad National Security, Llc Low cost, hardened single board computer for command and data handling
CN107291570A (zh) * 2017-06-23 2017-10-24 哈尔滨工业大学 基于Zynq‑7000的片上存储器抗单粒子翻转防护方法
CN108509300A (zh) * 2018-04-13 2018-09-07 上海微小卫星工程中心 一种基于卫星星务系统的单粒子自纠正方法
CN112181711A (zh) * 2020-09-15 2021-01-05 浙江吉利控股集团有限公司 一种低轨星载dsp抑制单粒子翻转的纠错系统及方法
CN112256463A (zh) * 2020-09-30 2021-01-22 北京控制工程研究所 保证Cache与片外存储器内容一致性的单粒子软错误处理方法
CN113012749A (zh) * 2021-01-06 2021-06-22 北京航空航天大学 一种Flash存储器单粒子效应检测方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
G.F. DELL: "《Comparison of aperture determinations on RHIC for single particles tracked 10/sup 6/ turns and 100 particles, having randomly generated initial coordinates, tracked for 1000 turns》", 《 PROCEEDINGS OF INTERNATIONAL CONFERENCE ON PARTICLE ACCELERATORS》 *
沈露: "《基于Zynq-7000的星载软件抗软错误设计方法研究》", 《万方》 *

Also Published As

Publication number Publication date
CN114090327B (zh) 2022-05-17

Similar Documents

Publication Publication Date Title
US5504859A (en) Data processor with enhanced error recovery
US7487397B2 (en) Method for cache correction using functional tests translated to fuse repair
US5193181A (en) Recovery method and apparatus for a pipelined processing unit of a multiprocessor system
US6883109B2 (en) Method for accessing scan chains and updating EEPROM-resident FPGA code through a system management processor and JTAG bus
US10002044B2 (en) Memory devices and modules
US6934879B2 (en) Method and apparatus for backing up and restoring data from nonvolatile memory
US6324657B1 (en) On-clip testing circuit and method for improving testing of integrated circuits
US6304984B1 (en) Method and system for injecting errors to a device within a computer system
US6615374B1 (en) First and next error identification for integrated circuit devices
US8650437B2 (en) Computer system and method of protection for the system's marking store
JPH01204300A (ja) メモリを機能的にテストする方法
JP2008517370A (ja) データ処理システムと処理装置のキャッシュコヒーレンスを監視する方法
US4621364A (en) Circuit arrangement for recording the addresses of storage cells with erroneous content
CN112650612A (zh) 一种内存故障定位方法及装置
US7430683B2 (en) Method and apparatus for enabling run-time recovery of a failed platform
US9720756B2 (en) Computing system with debug assert mechanism and method of operation thereof
CN114090327B (zh) 单粒子错误处理方法、系统及装置
US5751641A (en) Microprocessor memory test circuit and method
US20080163186A1 (en) Virtualization of micro-code patches for probe less debug
US5712822A (en) Microprocessor memory test circuit and method
US7353328B2 (en) Memory testing
EP0142983B1 (en) Fault protection flip flop
US20210133019A1 (en) System and method for targeted efficient logging of memory failures
US7168006B2 (en) Method and system for saving the state of integrated circuits upon failure
US20240095125A1 (en) Handling Data Storage Device Failure Using Remote System

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant