CN107291570A - 基于Zynq‑7000的片上存储器抗单粒子翻转防护方法 - Google Patents

基于Zynq‑7000的片上存储器抗单粒子翻转防护方法 Download PDF

Info

Publication number
CN107291570A
CN107291570A CN201710485237.7A CN201710485237A CN107291570A CN 107291570 A CN107291570 A CN 107291570A CN 201710485237 A CN201710485237 A CN 201710485237A CN 107291570 A CN107291570 A CN 107291570A
Authority
CN
China
Prior art keywords
data
ocm
zynq
cpu0
cpu1
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
CN201710485237.7A
Other languages
English (en)
Other versions
CN107291570B (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.)
Harbin Institute of Technology
Original Assignee
Harbin Institute of 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 Harbin Institute of Technology filed Critical Harbin Institute of Technology
Priority to CN201710485237.7A priority Critical patent/CN107291570B/zh
Publication of CN107291570A publication Critical patent/CN107291570A/zh
Application granted granted Critical
Publication of CN107291570B publication Critical patent/CN107291570B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/0721Error 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 within a central processing unit [CPU]
    • G06F11/0724Error 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 within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant

Landscapes

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

Abstract

本发明涉及一种基于Zynq‑7000的片上存储器抗单粒子翻转防护方法,应用于Zynq‑7000SoC在空间环境下的存储器容错设计中,其目的是为了解决空间环境中单粒子翻转对Zynq‑7000芯片内部片上存储器的数据可靠性的影响,保障Zynq‑7000芯片内部双核处理器之间的正确通信。本发明结合Zynq‑7000芯片的资源特性,采用软件EDAC方法实现双核处理器与片上存储器之间通信的数据加固操作,采用软件中断方式实现单位错误和双位错误的状态标记以及单位错的双核同步回写操作,在ARM处理器中实现数据的纠一检二和数据回写功能,从而提高Zynq‑7000内片上存储器抗单粒子翻转能力,为Zynq‑7000SoC内双核处理器之间进行数据通信的可靠性提供一种重要手段。

Description

基于Zynq-7000的片上存储器抗单粒子翻转防护方法
技术领域
本发明涉及软件方法领域,具体应用于星载系统中,具体是一种基于Zynq-7000的片上存储器抗单粒子翻转防护方法。
背景技术
近年来,商用器件(Commercial-off-the-shelf,COTS)因成本低、性能高、不受国外进口限制等特点被越来越多地应用于航天领域中。其中,Xilinx公司的Zynq-7000系列器件将双核ARM处理器与可编程逻辑、硬IP外设紧密集成,其灵活性和可配置性的完美结合受到小卫星领域的广泛关注,逐步应用于航天领域的工程实践中。
Zynq-7000SoC PS部分内的双核ARM Cortex-A9处理器可采用非对称多处理(Asymmetric Multi-core Processor,AMP)机制以并行或冗余的方式执行不同的任务,使系统性能实现最大化。Zynq-7000SoC PS部分内的片上存储器(On-Chip Memory,OCM)包含256KB的RAM存储空间,具有较高的访问吞吐量,是Zynq-7000SoC片内双核处理器之间进行数据交互和资源共享的重要资源媒介。但Zynq-7000作为COTS器件其抗辐射能力较低,其片上存储器很容易受到对RAM敏感的单粒子翻转的影响,造成存储器数据状态的改变,导致双核处理器通信的失效,甚至导致星载系统指令或数据的失效,引发系统崩溃。
在星载系统的设计中,不仅要满足星载系统基本的功能需求,更要考虑星载系统的高可靠性要求。目前,针对单粒子翻转进行存储器加固的常用方法是硬件EDAC电路,主要包括处理器自带EDAC电路和用FPGA实现EDAC电路两类。其中,处理器自带EDAC电路通常由芯片的安全等级决定,如宇航级芯片,而Zynq-7000内的片上存储器仅具有奇偶校验功能,不具备纠错能力,不满足星载系统抗单粒子翻转的需求;用FPGA实现EDAC电路具有设计灵活、可配置的特点,但SRAM型FPGA作为易失性存储,其自身可靠性存在问题,且最重要的是双核处理器与片上存储器已集成在同一芯片中,无法通过外加硬件EDAC电路实现存储器的加固。
发明内容
为解决传统硬件EDAC在Zynq-7000内片上存储器OCM加固的局限性,本发明提供了一种基于Zynq-7000的片上存储器抗单粒子翻转软件防护设计方法,利用Zynq-7000内双核ARM处理器和软件生成中断(Software Generate Interrupt,SGI)的资源特性,采用软件EDAC方法实现OCM的数据容错,保障双核通信的可靠性。
一种基于Zynq-7000的片上存储器抗单粒子翻转防护方法,CPU0或CPU1中的原始数据通过软件EDAC模块进行编码操作,写入到OCM中;OCM中的Hsiao码数据通过软件EDAC模块进行解码操作,被CPU0或CPU1读取;当数据读取检测到单位错或双位错时,SGI产生软件中断进行双核同步数据回写或通知CPU0和CPU1进行处理,其特征在于:
A、关键变量定义及初始化:将需存储在OCM且待加固的变量作为关键变量,定义关键变量的位宽,指定关键变量在OCM中的存储地址,初始化关键变量,并对SGI进行使能;
B、数据编解码操作:采用具有纠一检二功能的Hsiao码作为OCM加固的纠错码,根据Hsiao码算法原理,对CPU写入OCM的数据进行编码操作,对CPU从OCM读取的数据进行解码操作;
C、错误中断生成:采用Zynq-7000内部软件生成中断SGI处理检测到的错误,当从OCM读取数据检测到单位错时,SGI产生软件中断SEC,通知CPU0和CPU1进行同步回写;当从OCM读取数据检测到双位错时,SGI产生软件中断DED,通知CPU0和CPU1进行处理;
D、双核同步回写:当数据读取检测到单位错时,通过Hsiao码解码操作可以得到CPU所需的正确数据,但为便于后续数据的使用需将正确数据回写到OCM中。同时为避免一个CPU在数据回写过程中被另一个CPU访问,采取双核同步回写操作,直到数据回写完成才可以被访问。
进一步的,所述的关键变量定义及初始化过程中,将所有存储到OCM的关键变量定义成位宽为32位的无符号长整型数,其中仅低16位有效,高16位全部清0,用作(13,8)Hsiao码校验位的存储;为所有的关键变量分配OCM存储地址,Zynq-7000内OCM默认的映射地址空间为(0x0000_0000~0x0003_FFFF)和(0xFFFF_0000~0xFFFF_FFFF);对存储到OCM的关键变量进行初始化赋值。
进一步的,所述的解码操作过程中,当CPU向OCM写入数据时,从CPU0或CPU1中读取原始数据,将原始数据的低16位有效数据拆分成两组8位数据,对8位数据进行移位操作存入一个长度为8的数据位数组中,使数组中各元素最低位的值为8位数据相应位的值;根据上述得到的数据数组与(13,8)Hsiao码算法获取的生成矩阵G,对每一个8位数据进行编码操作,并获取一个长度为5的校验位数组;根据Hsiao码的数据位分配,将两组数据位数组和校验位数组进行移位操作,合成一个32位Hsiao码数据,存入OCM中。
进一步的,所述的解码操作过程中,当CPU从OCM读取数据时:从OCM中读取Hsiao码数据,并记录该数据地址,将Hsiao码数据拆分成两组(13,8)Hsiao码数据,对13位编码数据进行移位操作存入一个长度为13的编码位数组中,使数组中各元素最低位的值为编码数据相应位的值;根据上述得到的编码位数组与(13,8)Hsiao码算法获取的监督矩阵H,对每一个编码数据进行解码操作,并获取一个长度为5的校验子数组;将两组校验子数组进行移位操作,使校验子S相应位的值为数组中各元素最低位的值,根据校验子S得到无错、单位错和双位错的错误状态标志,对于无错和单位错可以得到正确的数据,被CPU0或CPU1读取和使用。
进一步的,所述的错误中断生成过程中,为单位错和双位错分别分配一个SGI ID号,初始化并开启对应的SGI;当检测到错误时,将SGI连接到所有的CPU,通过写Zynq-7000内部ICDSGIR寄存器,产生相应的软件中断,同时对错误状态标志SEC_Flag或DED_Flag置位;进入单位错或双位错对应的软件中断服务函数。
进一步的,所述的双核同步回写过程中,当CPU0检测到单位错时:CPU0解码操作对单位错状态标志SEC_Flag置1,CPU0和CPU1同时进入单位错中断服务程序;在CPU0中,获取待回写变量的存储地址和正确数据,并将该正确数据回写到对应的存储地址,将SEC_Flag置0;在CPU1中,等待CPU0完成回写操作,直到SEC_Flag为0。
进一步的,所述的双核同步回写过程中,当CPU1检测到单位错时:CPU1解码操作对单位错状态标志SEC_Flag置2,CPU0和CPU1同时进入单位错中断服务程序;在CPU1中,获取待回写变量的存储地址和正确数据,并将该正确数据回写到对应的存储地址,将SEC_Flag置0;在CPU0中,等待CPU1完成回写操作,直到SEC_Flag为0。
本发明的有益效果是:通过采用本发明的技术方案,
(1)该方法利用Zynq-7000内部双核ARM处理器和软件生成中断SGI等自带的资源特性,将软件EDAC模块分为数据编解码模块、错误中断生成模块和双核同步回写模块三部分,使关键变量具有纠正1位错误的同时能检测到2位错误,以及数据回写的能力。
(2)该方法采取双核同步回写操作,解决一个CPU在数据回写过程中另一个CPU重复读取到错误数据的问题,避免数据回写对双核ARM处理器访问OCM造成的冲突。
(3)该方法属于空间环境中存储器加固的软件处理手段,解决了Zynq-7000内CPU与OCM之间无法硬件容错的缺陷,可对OCM中指定地址的数据进行加固,满足双核之间数据访问的条件,提高双核通信的可靠性。
附图说明
图1为本发明软件EDAC原理框图。
图2为Hsiao码数据位分配图。
图3为软件EDAC数据写入流程图。
图4为软件EDAC数据读取流程图。
图5为CPU0双核同步回写程序流程图。
图6为CPU1双核同步回写程序流程图。
具体实施方式
下面结合附图对本发明做进一步说明。
一种基于Zynq-7000的片上存储器抗单粒子翻转防护方法,利用Zynq-7000芯片内双核ARM处理器和软件生成中断(Software Generate Interrupt,SGI)的资源特性,采用软件EDAC方法实现OCM的数据容错,保障双核通信的可靠性,其原理框图如图1所示。
在图1中,CPU0或CPU1中的原始数据通过软件EDAC模块进行编码操作,写入到OCM中;OCM中的Hsiao码数据通过软件EDAC模块进行解码操作,被CPU0或CPU1读取;当数据读取检测到单位错或双位错时,SGI产生软件中断进行双核同步数据回写或通知CPU0和CPU1进行处理。主要步骤如下:
步骤(一)关键变量定义及初始化:将需存储在OCM且待加固的变量作为关键变量,定义关键变量的位宽,指定关键变量在OCM中的存储地址,初始化关键变量,并对SGI进行使能;具体为:
(1)将所有存储到OCM的关键变量定义成位宽为32位的无符号长整型数,其中仅低16位有效,高16位全部清0,用作(13,8)Hsiao码校验位的存储,其Hsiao码数据位分配如图2所示;
(2)为所有的关键变量分配OCM存储地址,Zynq-7000内OCM默认的映射地址空间为(0x0000_0000~0x0003_FFFF)和(0xFFFF_0000~0xFFFF_FFFF)。
(3)对存储到OCM的关键变量进行初始化赋值。
步骤(二)数据编解码操作:采用具有纠一检二功能的Hsiao码作为OCM加固的纠错码,根据Hsiao码算法原理,对CPU写入OCM的数据进行编码操作,对CPU从OCM读取的数据进行解码操作,具体为:
如图3所示,当CPU向OCM写入数据时:
(1)从CPU0或CPU1中读取原始数据,将原始数据的低16位有效数据拆分成两组8位数据,对8位数据进行移位操作存入一个长度为8的数据位数组中,使数组中各元素最低位的值为8位数据相应位的值;
(2)根据上述得到的数据数组与(13,8)Hsiao码算法获取的生成矩阵G,对每一个8位数据进行编码操作,并获取一个长度为5的校验位数组;
(3)根据图2所示的Hsiao码数据位分配,将两组数据位数组和校验位数组进行移位操作,合成一个32位Hsiao码数据,存入OCM中。
如图4所示,当CPU从OCM读取数据时:
(1)从OCM中读取Hsiao码数据,并记录该数据地址,将Hsiao码数据拆分成两组(13,8)Hsiao码数据,对13位编码数据进行移位操作存入一个长度为13的编码位数组中,使数组中各元素最低位的值为编码数据相应位的值;
(2)根据上述得到的编码位数组与(13,8)Hsiao码算法获取的监督矩阵H,对每一个编码数据进行解码操作,并获取一个长度为5的校验子数组;
(3)将两组校验子数组进行移位操作,使校验子S相应位的值为数组中各元素最低位的值,根据校验子S得到无错、单位错和双位错的错误状态标志,对于无错和单位错可以得到正确的数据,被CPU0或CPU1读取和使用。
步骤(三)错误中断生成:采用Zynq-7000内部软件生成中断SGI处理检测到的错误,当从OCM读取数据检测到单位错时,SGI产生软件中断SEC,通知CPU0和CPU1进行同步回写;当从OCM读取数据检测到双位错时,SGI产生软件中断DED,通知CPU0和CPU1进行处理。具体为:
(1)为单位错和双位错分别分配一个SGI ID号,初始化并开启对应的SGI;
(2)当检测到错误时,将SGI连接到所有的CPU,通过写Zynq-7000内部ICDSGIR寄存器,产生相应的软件中断,同时对错误状态标志SEC_Flag或DED_Flag置位;
(3)进入单位错或双位错对应的软件中断服务函数。
步骤(四)双核同步回写:当数据读取检测到单位错时,通过Hsiao码解码操作可以得到CPU所需的正确数据,但为便于后续数据的使用需将正确数据回写到OCM中,同时为避免一个CPU在数据回写过程中被另一个CPU访问,采取双核同步回写操作,直到数据回写完成才可以被访问,如图4、图5所示。具体为:
当CPU0检测到单位错时:
(1)CPU0解码操作对单位错状态标志SEC_Flag置1,CPU0和CPU1同时进入单位错中断服务程序;
(2)在CPU0中,获取待回写变量的存储地址和正确数据,并将该正确数据回写到对应的存储地址,将SEC_Flag置0;在CPU1中,等待CPU0完成回写操作,直到SEC_Flag为0。
当CPU1检测到单位错时:
(1)CPU1解码操作对单位错状态标志SEC_Flag置2,CPU0和CPU1同时进入单位错中断服务程序;
(2)在CPU1中,获取待回写变量的存储地址和正确数据,并将该正确数据回写到对应的存储地址,将SEC_Flag置0;在CPU0中,等待CPU1完成回写操作,直到SEC_Flag为0。
以上所述实施例仅为表达本发明的实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形、同等替换、改进等,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (7)

1.一种基于Zynq-7000的片上存储器抗单粒子翻转防护方法,CPU0或CPU1中的原始数据通过软件EDAC模块进行编码操作,写入到OCM中;OCM中的Hsiao码数据通过软件EDAC模块进行解码操作,被CPU0或CPU1读取;当数据读取检测到单位错或双位错时,SGI产生软件中断进行双核同步数据回写或通知CPU0和CPU1进行处理,其特征在于:
A、关键变量定义及初始化:将需存储在OCM且待加固的变量作为关键变量,定义关键变量的位宽,指定关键变量在OCM中的存储地址,初始化关键变量,并对SGI进行使能;
B、数据编解码操作:采用具有纠一检二功能的Hsiao码作为OCM加固的纠错码,根据Hsiao码算法原理,对CPU写入OCM的数据进行编码操作,对CPU从OCM读取的数据进行解码操作;
C、错误中断生成:采用Zynq-7000内部软件生成中断SGI处理检测到的错误,当从OCM读取数据检测到单位错时,SGI产生软件中断SEC,通知CPU0和CPU1进行同步回写;当从OCM读取数据检测到双位错时,SGI产生软件中断DED,通知CPU0和CPU1进行处理;
D、双核同步回写:当数据读取检测到单位错时,通过Hsiao码解码操作可以得到CPU所需的正确数据,但为便于后续数据的使用需将正确数据回写到OCM中,同时为避免一个CPU在数据回写过程中被另一个CPU访问,采取双核同步回写操作,直到数据回写完成才可以被访问。
2.根据权利要求1所述的基于Zynq-7000的片上存储器抗单粒子翻转防护方法,其特征在于:所述的关键变量定义及初始化过程中,将所有存储到OCM的关键变量定义成位宽为32位的无符号长整型数,其中仅低16位有效,高16位全部清0,用作(13,8)Hsiao码校验位的存储;为所有的关键变量分配OCM存储地址,Zynq-7000内OCM默认的映射地址空间为(0x0000_0000~0x0003_FFFF)和(0xFFFF_0000~0xFFFF_FFFF);对存储到OCM的关键变量进行初始化赋值。
3.根据权利要求1所述的基于Zynq-7000的片上存储器抗单粒子翻转防护方法,其特征在于:所述的解码操作过程中,当CPU向OCM写入数据时,从CPU0或CPU1中读取原始数据,将原始数据的低16位有效数据拆分成两组8位数据,对8位数据进行移位操作存入一个长度为8的数据位数组中,使数组中各元素最低位的值为8位数据相应位的值;根据上述得到的数据数组与(13,8)Hsiao码算法获取的生成矩阵G,对每一个8位数据进行编码操作,并获取一个长度为5的校验位数组;根据Hsiao码的数据位分配,将两组数据位数组和校验位数组进行移位操作,合成一个32位Hsiao码数据,存入OCM中。
4.根据权利要求1所述的基于Zynq-7000的片上存储器抗单粒子翻转防护方法,其特征在于:所述的解码操作过程中,当CPU从OCM读取数据时:从OCM中读取Hsiao码数据,并记录该数据地址,将Hsiao码数据拆分成两组(13,8)Hsiao码数据,对13位编码数据进行移位操作存入一个长度为13的编码位数组中,使数组中各元素最低位的值为编码数据相应位的值;根据上述得到的编码位数组与(13,8)Hsiao码算法获取的监督矩阵H,对每一个编码数据进行解码操作,并获取一个长度为5的校验子数组;将两组校验子数组进行移位操作,使校验子S相应位的值为数组中各元素最低位的值,根据校验子S得到无错、单位错和双位错的错误状态标志,对于无错和单位错可以得到正确的数据,被CPU0或CPU1读取和使用。
5.根据权利要求1所述的基于Zynq-7000的片上存储器抗单粒子翻转防护方法,其特征在于:所述的错误中断生成过程中,为单位错和双位错分别分配一个SGI ID号,初始化并开启对应的SGI;当检测到错误时,将SGI连接到所有的CPU,通过写Zynq-7000内部ICDSGIR寄存器,产生相应的软件中断,同时对错误状态标志SEC_Flag或DED_Flag置位;进入单位错或双位错对应的软件中断服务函数。
6.根据权利要求1所述的基于Zynq-7000的片上存储器抗单粒子翻转防护方法,其特征在于:所述的双核同步回写过程中,当CPU0检测到单位错时:CPU0解码操作对单位错状态标志SEC_Flag置1,CPU0和CPU1同时进入单位错中断服务程序;在CPU0中,获取待回写变量的存储地址和正确数据,并将该正确数据回写到对应的存储地址,将SEC_Flag置0;在CPU1中,等待CPU0完成回写操作,直到SEC_Flag为0。
7.根据权利要求1所述的基于Zynq-7000的片上存储器抗单粒子翻转防护方法,其特征在于:所述的双核同步回写过程中,当CPU1检测到单位错时:CPU1解码操作对单位错状态标志SEC_Flag置2,CPU0和CPU1同时进入单位错中断服务程序;在CPU1中,获取待回写变量的存储地址和正确数据,并将该正确数据回写到对应的存储地址,将SEC_Flag置0;在CPU0中,等待CPU1完成回写操作,直到SEC_Flag为0。
CN201710485237.7A 2017-06-23 2017-06-23 基于Zynq-7000的片上存储器抗单粒子翻转防护方法 Active CN107291570B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710485237.7A CN107291570B (zh) 2017-06-23 2017-06-23 基于Zynq-7000的片上存储器抗单粒子翻转防护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710485237.7A CN107291570B (zh) 2017-06-23 2017-06-23 基于Zynq-7000的片上存储器抗单粒子翻转防护方法

Publications (2)

Publication Number Publication Date
CN107291570A true CN107291570A (zh) 2017-10-24
CN107291570B CN107291570B (zh) 2020-01-07

Family

ID=60098095

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710485237.7A Active CN107291570B (zh) 2017-06-23 2017-06-23 基于Zynq-7000的片上存储器抗单粒子翻转防护方法

Country Status (1)

Country Link
CN (1) CN107291570B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110111826A (zh) * 2019-04-16 2019-08-09 北京空间飞行器总体设计部 一种航天器使用sram型fpga双口ram抗单粒子翻转加固装置
CN114090327A (zh) * 2022-01-20 2022-02-25 浙江吉利控股集团有限公司 单粒子错误处理方法、系统及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1146423B1 (en) * 2000-04-11 2010-01-20 The Boeing Company Voted processing system
CN105045672A (zh) * 2015-07-24 2015-11-11 哈尔滨工业大学 一种基于sram fpga的多级容错加固卫星信息处理系统
CN106484581A (zh) * 2016-10-25 2017-03-08 哈尔滨工业大学 空间辐射环境下可编程soc器件单粒子翻转检测系统及方法
CN106531224A (zh) * 2016-10-25 2017-03-22 哈尔滨工业大学 一种基于sram型fpga的ram数据可靠性加固装置及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1146423B1 (en) * 2000-04-11 2010-01-20 The Boeing Company Voted processing system
CN105045672A (zh) * 2015-07-24 2015-11-11 哈尔滨工业大学 一种基于sram fpga的多级容错加固卫星信息处理系统
CN106484581A (zh) * 2016-10-25 2017-03-08 哈尔滨工业大学 空间辐射环境下可编程soc器件单粒子翻转检测系统及方法
CN106531224A (zh) * 2016-10-25 2017-03-22 哈尔滨工业大学 一种基于sram型fpga的ram数据可靠性加固装置及方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MATTHIAS GÖBEL等: "High Performance Memory Accesses on FPGA-SoCs: A quantitative analysis", 《2015 IEEE 23RD ANNUAL INTERNATIONAL SYMPOSIUM ON FIELD-PROGRAMMABLE CUSTOM COMPUTING MACHINES》 *
杨卫涛 等: "片上存储器单粒子翻转效应诊断及修复", 《核电子学与探测技术》 *
赵云富 等: "一种存储器容错设计方法", 《空间控制技术与应用》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110111826A (zh) * 2019-04-16 2019-08-09 北京空间飞行器总体设计部 一种航天器使用sram型fpga双口ram抗单粒子翻转加固装置
CN114090327A (zh) * 2022-01-20 2022-02-25 浙江吉利控股集团有限公司 单粒子错误处理方法、系统及装置

Also Published As

Publication number Publication date
CN107291570B (zh) 2020-01-07

Similar Documents

Publication Publication Date Title
US10802910B2 (en) System for identifying and correcting data errors
Nair et al. XED: Exposing on-die error detection information for strong memory reliability
CN103793182B (zh) 用于可扩展存储保护的系统和方法
US8341499B2 (en) System and method for error detection in a redundant memory system
US8725944B2 (en) Implementing raid in solid state memory
US8095759B2 (en) Error management firewall in a multiprocessor computer
US9436548B2 (en) ECC bypass using low latency CE correction with retry select signal
JPS6394353A (ja) 誤り訂正方法及び装置
CN107391026A (zh) 闪存装置及闪存存储管理方法
TW200919171A (en) System and method for error correction and detection in a memory system
CN107403646A (zh) 闪存装置及闪存存储管理方法
CN102782654A (zh) 用于执行回拷操作的方法和控制器
TWI689930B (zh) 快閃記憶體裝置及快閃記憶體儲存管理方法
CN105740168A (zh) 一种容错目录高速缓存控制器
CN103984630A (zh) 一种基于at697处理器的单粒子翻转故障处理方法
CN103631670B (zh) 存储器储存装置、存储器控制器与数据处理方法
WO2019173075A4 (en) Mission-critical ai processor with multi-layer fault tolerance support
Jian et al. Parity helix: Efficient protection for single-dimensional faults in multi-dimensional memory systems
CN103699337A (zh) 一种基于独立磁盘冗余阵列raid的写控制方法及系统
US11714704B2 (en) Modified checksum using a poison data pattern
CN107291570A (zh) 基于Zynq‑7000的片上存储器抗单粒子翻转防护方法
Pae et al. Minimal aliasing single-error-correction codes for dram reliability improvement
US20240004759A1 (en) Cache line data protection
US20230236933A1 (en) Shadow dram with crc+raid architecture, system and method for high ras feature in a cxl drive
US8661320B2 (en) Independent orthogonal error correction and detection

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