CN103678131A - 多核处理器的软件故障注入与分析系统 - Google Patents
多核处理器的软件故障注入与分析系统 Download PDFInfo
- Publication number
- CN103678131A CN103678131A CN201310695964.8A CN201310695964A CN103678131A CN 103678131 A CN103678131 A CN 103678131A CN 201310695964 A CN201310695964 A CN 201310695964A CN 103678131 A CN103678131 A CN 103678131A
- Authority
- CN
- China
- Prior art keywords
- fault
- software
- software fault
- module
- core processor
- 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.)
- Pending
Links
Images
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明提供了一种多核处理器的软件故障注入及分析系统,具体实现包括:软件故障注入子系统和软件故障分析子系统;所述软件故障注入子系统包括:故障定义模块,用于存储及输出预定的软件故障;故障注入模块,用于通过预定的注入器将所述预定的软件故障注入多核处理器系统;所述软件故障分析子系统包括:日志读取模块,用于读取并记录所述多核处理器系统中的软件故障;日志分析模块,用于分析所述多核处理器系统中的软件故障并输出软件故障的类型。本发明提供了一种适用于国产多核处理器芯片的故障模型用以模拟复杂电磁环境下产生的软件故障,并且能够实现软件故障注入与分析系统进行软件注入与分析。
Description
技术领域
本发明涉及计算机软硬件领域,尤其涉及一种MIPS架构多核处理器下的软件故障注入与分析系统。
背景技术
目前,国产多核处理器多应用于军用系统以及航空航天领域,其应用环境的复杂性以及多核处理器本身的特性使得它更容易受到瞬时故障的威胁,比较典型的外部环境为太空环境。首先,在复杂的环境下集成电路受到高能粒子轰击或噪声干扰增加了故障的可能性;其次,高能粒子轰击或者噪声干扰产生单粒子效应中以单粒子翻转为主,而单粒子翻转又称之为软件故障。
虽然目前进行国产多核处理器各项可靠性实验可以采取不同的故障注入方式来模拟复杂的外部环境,但是各自都有不同程度的缺点。首先,使用放射性粒子在封闭环境中模拟太空环境的方法,造价极高;其次,使用基于接触式的硬件模拟故障注入对于当前越来越复杂的多核处理器芯片已经越来越来难以实现。
发明内容
本发明为解决现有的MIPS架构多核处理器的故障注入技术存在的成本较高、实现方式过于复杂的问题,进而提供一种MIPS架构多核处理器的软件故障注入与分析系统。
本发明是通过以下技术方案实现的:
一种多核处理器的软件故障注入及分析系统,包括:软件故障注入子系统和软件故障分析子系统;
所述软件故障注入子系统包括:
故障定义模块,用于存储及输出预定的软件故障;
故障注入模块,用于通过预定的注入器将所述预定的软件故障注入多核处理器系统;
所述软件故障分析子系统包括:
日志读取模块,用于读取并记录所述多核处理器系统中的软件故障;
日志分析模块,用于分析所述多核处理器系统中的软件故障并输出软件故障的类型。
本发明的有益效果:本发明提供了一种适用于国产多核处理器芯片的故障模型用以模拟复杂电磁环境下产生的软件故障,并且能够使用软件故障注入与分析系统进行软件注入与分析。
附图说明
图1为本发明提供的MIPS多核处理器的软件故障注入及分析系统的结构示意图;
图2为本发明提供的MIPS多核处理器的软件故障注入及分析系统所处的层次示意图。
图3为本发明提供的MIPS多核处理器的软件故障注入及分析方法中故障模型的向量空间。
具体实施方式
为了能够更清晰地阐明本发明的特点和工作基本原理,以下结合附图及实施例,对本发明进行说明。
本具体实施方式提供了一种多核处理器的软件故障注入及分析系统,如图1所示,具体实现包括:软件故障注入子系统和软件故障分析子系统;
所述软件故障注入子系统包括:
故障定义模块1,用于存储及输出预定的软件故障;
故障注入模块2,用于通过预定的注入器将所述预定的软件故障注入多核处理器系统;
所述软件故障分析子系统包括:
日志读取模块3,用于读取并记录所述多核处理器系统中的软件故障;
日志分析模块4,用于分析所述多核处理器系统中的软件故障并输出软件故障的类型。
本具体实施方式提供的多核处理器操作系统级进程的冗余分析系统以运行在Unix操作系统为例进行说明。
具体的,如图2所示,本具体实施方式提供的多核处理器的软件故障注入及分析系统运行于Unix操作系统上一层,即处在应用程序层。相应的多核处理器的软件故障注入及分析系统由两个子系统组成:软件故障注入子系统和软件故障分析子系统。其中,在具体的软件故障进行注入之前,需要动态的对需要进行注入的CPU核心进行进程级别绑定;然后,软件故障注入子系统通过调用故障注入模块2进行故障注入,故障注入模块2主要包括通用寄存器故障注入器、浮点注入器和内存注入器来实现对不同的位置调用不同的软件故障注入。同时,软件故障注入子系统调用故障注入模块2的方式可以方便的扩展出更多的故障注入器,并且每个故障注入器可以使用相对独立的故障注入的方法。更加具体地,上述通用寄存器故障注入器、浮点注入器和内存注入器均可采用Ptrace方式进行故障注入。而软件故障分析子系统则通过日志读取模块3调用Unix日志读取来获取系统日志,并通过日志分析模块4对Unix系统进行日志系统分析,获得软件故障注入结果分析报告。
进一步地,根据软件故障发生的上下文环境,本具体实施方式在故障定义模块1通过一个三维向量来定义一个软件故障。第一个维度为故障类型;第二个维度为触发方式;第三个维度为发生位置。
第一个维度:故障类型。
在有电子辐射、电子扰动的复杂外部环境,最容易发生的元器件故障为单粒子效应。单粒子效应一般包括三种:单粒子翻转、单粒子锁定、单粒子击穿。单粒子翻转现象是芯片中某一个数据存储单元受到高能粒子辐射后产生的能量变化,数据表现形式为0->1或者1->0。单粒子锁定现象是指芯片中某一数据存储单元由于受到某一单一扰动,在一段时间内数据不发生变化,数据表现形式为一段时间内数据不受控制,一直保持1或者0。单粒子击穿现象是芯片被损坏,无法继续工作。故障类型的维度取值为1bit单粒子翻转、1bit单粒子锁定、Nbit单粒子翻转和Nbit单粒子锁定共四种方式,单粒子击穿不予考虑。
第二个维度:触发方式
使用软件模拟软件故障需要定义何时触发软件故障产生。触发方式定义了软件故障发生的时机。为了模拟电子辐射、电子扰动等复杂电子环境下软件故障发生的随机性,定义两种随机触方式:按时间随机触发、按指令条数随机触发。为了模拟有规律的电子辐射、电子扰动的环境,定义两种规律的触发方式:固定时间点触发方式、固定指令条数触发方式。
第三个维度:发生位置
按照多核处理器运行时所用到的部件,定义如下的软件故障发生位置:通用寄存器组、浮点寄存器组、内存代码段、内存数据段、内存堆段、内存栈段。
从以上的三个维度便可以定义使用软件模拟的一次软件故障的发生。
在定义软件故障后,本具体实施方式中的故障模型可通过一系列三维向量和时间限制来实现,三维向量形如(单粒子翻转,随机指令条数,通用寄存器)+ 100ms,表明在100ms内需要注入此种向量的软件故障。
上述软件故障注入及分析系统是一个完整的实施方案,运行操作系统之上,对于不同的国产多核处理器环境稍加移植,具有很好的适应性。上述软件故障注入及分析系统是一种综合了可移植性、开发成本、可扩展性、可适应性各方面而做的最佳设计。并且,上述软件故障注入及分析系统并不局限于上述实施例,例如,上述故障注入器不限于通用寄存器故障注入器、浮点注入器和内存注入器三种。
以上所述,仅为本发明较佳的具体实施方式,这些具体实施方式都是基于本发明整体构思下的不同实现方式,而且本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (2)
1.一种多核处理器的软件故障注入及分析系统,其特征在于,具体实现包括:软件故障注入子系统和软件故障分析子系统;
所述软件故障注入子系统包括:
故障定义模块,用于存储及输出预定的软件故障;
故障注入模块,用于通过预定的注入器将所述预定的软件故障注入多核处理器系统;
所述软件故障分析子系统包括:
日志读取模块,用于读取并记录所述多核处理器系统中的软件故障;
日志分析模块,用于分析所述多核处理器系统中的软件故障并输出软件故障的类型。
2.根据权利要求1所述的系统,其特征在于,在故障定义模块中,所述软件故障的类型包括故障类型、触发方式和发生位置,所述故障类型包括由单粒子翻转、单粒子锁定和单粒子击穿引发的故障,所述触发方式包括按时间随机触发和按指令条数随机触发,所述发生位置包括通用寄存器组、浮点寄存器组、内存代码段、内存数据段、内存堆段和内存栈段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310695964.8A CN103678131A (zh) | 2013-12-18 | 2013-12-18 | 多核处理器的软件故障注入与分析系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310695964.8A CN103678131A (zh) | 2013-12-18 | 2013-12-18 | 多核处理器的软件故障注入与分析系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103678131A true CN103678131A (zh) | 2014-03-26 |
Family
ID=50315765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310695964.8A Pending CN103678131A (zh) | 2013-12-18 | 2013-12-18 | 多核处理器的软件故障注入与分析系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103678131A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776178A (zh) * | 2016-12-16 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种cpu故障注入方法及其装置及故障管理系统 |
CN107678975A (zh) * | 2017-11-17 | 2018-02-09 | 北京锐安科技有限公司 | 一种软件故障检测方法及装置 |
CN108073479A (zh) * | 2016-11-14 | 2018-05-25 | 南京理工大学 | 一种用于星载计算机可靠性验证的故障注入方法 |
CN110032485A (zh) * | 2019-04-17 | 2019-07-19 | 清华大学 | 一种多核处理器及其故障注入方法 |
CN110083469A (zh) * | 2019-05-11 | 2019-08-02 | 肖银皓 | 一种异构硬件组织运行统一内核方法及系统 |
CN113467407A (zh) * | 2021-09-06 | 2021-10-01 | 西安热工研究院有限公司 | 一种分散控制系统故障信息收集方法、系统及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110016290A1 (en) * | 2009-07-14 | 2011-01-20 | Arie Chobotaro | Method and Apparatus for Supporting Address Translation in a Multiprocessor Virtual Machine Environment |
CN102270166A (zh) * | 2011-02-22 | 2011-12-07 | 清华大学 | 基于模拟器的处理器故障注入及跟踪方法及模拟器 |
CN102929729A (zh) * | 2012-09-11 | 2013-02-13 | 华为技术有限公司 | 故障跟踪的方法及装置 |
-
2013
- 2013-12-18 CN CN201310695964.8A patent/CN103678131A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110016290A1 (en) * | 2009-07-14 | 2011-01-20 | Arie Chobotaro | Method and Apparatus for Supporting Address Translation in a Multiprocessor Virtual Machine Environment |
CN102270166A (zh) * | 2011-02-22 | 2011-12-07 | 清华大学 | 基于模拟器的处理器故障注入及跟踪方法及模拟器 |
CN102929729A (zh) * | 2012-09-11 | 2013-02-13 | 华为技术有限公司 | 故障跟踪的方法及装置 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108073479A (zh) * | 2016-11-14 | 2018-05-25 | 南京理工大学 | 一种用于星载计算机可靠性验证的故障注入方法 |
CN106776178A (zh) * | 2016-12-16 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种cpu故障注入方法及其装置及故障管理系统 |
CN107678975A (zh) * | 2017-11-17 | 2018-02-09 | 北京锐安科技有限公司 | 一种软件故障检测方法及装置 |
CN110032485A (zh) * | 2019-04-17 | 2019-07-19 | 清华大学 | 一种多核处理器及其故障注入方法 |
CN110083469A (zh) * | 2019-05-11 | 2019-08-02 | 肖银皓 | 一种异构硬件组织运行统一内核方法及系统 |
CN110083469B (zh) * | 2019-05-11 | 2021-06-04 | 广东财经大学 | 一种异构硬件组织运行统一内核方法及系统 |
CN113467407A (zh) * | 2021-09-06 | 2021-10-01 | 西安热工研究院有限公司 | 一种分散控制系统故障信息收集方法、系统及设备 |
CN113467407B (zh) * | 2021-09-06 | 2021-11-16 | 西安热工研究院有限公司 | 一种分散控制系统故障信息收集方法、系统及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103678131A (zh) | 多核处理器的软件故障注入与分析系统 | |
Leveugle et al. | Statistical fault injection: Quantified error and confidence | |
CN102332310B (zh) | 一种基于fpga的nand flash器件单粒子效应测试系统 | |
CN102636744B (zh) | 一种检测fpga单粒子效应与其时序特性关系的装置及方法 | |
Mutlu et al. | Fundamentally understanding and solving rowhammer | |
CN103617120A (zh) | 一种单元测试方法和装置 | |
CN107741559B (zh) | 一种面向空间辐射环境下的单粒子翻转测试系统及方法 | |
Du et al. | High performance dense linear system solver with resilience to multiple soft errors | |
CN111030991B (zh) | 一种用于数据处理器的防御控制流攻击方法 | |
CN103150228A (zh) | 面向高速缓冲存储器的可综合伪随机验证方法及装置 | |
CN105810254B (zh) | 用于制作反应堆核设计少群截面库的再启动方法和系统 | |
Villalta et al. | SEU emulation in industrial SoCs combining microprocessor and FPGA | |
Chen et al. | Memguard: A low cost and energy efficient design to support and enhance memory system reliability | |
CN103197982B (zh) | 一种任务局部最优检查点间隔搜索方法 | |
Atkinson et al. | Fault injection experiments with the clamr hydrodynamics mini-app | |
CN111680290B (zh) | 一种基于以太坊虚拟机的代码插桩框架系统 | |
CN104133763A (zh) | 程序调试系统及方法 | |
CN110865936B (zh) | 一种面向集成电路安全功能的白盒插桩fpga原型验证方法 | |
Wang et al. | An M-cache-based security monitoring and fault recovery architecture for embedded processor | |
CN101694686A (zh) | 基于逻辑隔离的缓冲区溢出动态度量方法 | |
CN106598799A (zh) | 一种故障注入模拟系统及故障管理系统 | |
Mao et al. | An Automated Fault Injection Platform for Fault Tolerant FFT Implemented in SRAM-Based FPGA | |
Yang et al. | Development of NPP digital I&C system closed-loop online test system based on signal transmission array | |
CN114065692A (zh) | 一种基于单粒子效应的存储器位图解析方法及系统 | |
Guibbaud et al. | New combined approach for the evaluation of the soft-errors of complex ICs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140326 |