CN110147293A - 一种降低微处理器软错误易感性的方法 - Google Patents

一种降低微处理器软错误易感性的方法 Download PDF

Info

Publication number
CN110147293A
CN110147293A CN201910418300.4A CN201910418300A CN110147293A CN 110147293 A CN110147293 A CN 110147293A CN 201910418300 A CN201910418300 A CN 201910418300A CN 110147293 A CN110147293 A CN 110147293A
Authority
CN
China
Prior art keywords
instruction
type
microprocessor
soft error
neurological susceptibility
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
Application number
CN201910418300.4A
Other languages
English (en)
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.)
Jiangnan University
Original Assignee
Jiangnan University
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 Jiangnan University filed Critical Jiangnan University
Priority to CN201910418300.4A priority Critical patent/CN110147293A/zh
Publication of CN110147293A publication Critical patent/CN110147293A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • 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/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microcomputers (AREA)

Abstract

本发明公开了一种降低微处理器软错误易感性的方法,具体涉及一种基于指令与功能单元配置匹配度降低微处理器软错误易感性的方法,属于微处理器部件的软错误缓解研究领域。本发明方法通过比较相应类型的指令数量与功能数量之间的差值,当相应类型的指令数量小于功能数量时,直接发射指令;当相应类型的指令数量与功能数量之间的差值大于所定阈值,则暂时不再向发射队列中分派指令;如果匹配的差异低于所设阈值,此时指令可以正常地被分派到发射部件中,通过该方式来减少指令在发射队列中等待的时间,使得发射队列对软错误的敏感性降低。

Description

一种降低微处理器软错误易感性的方法
技术领域
本发明涉及一种降低微处理器软错误易感性的方法,具体涉及一种基于指令与功能单元配置匹配度降低微处理器软错误易感性的方法,属于微处理器部件的软错误缓解研究领域。
背景技术
软错误是指由于粒子辐射等原因造成的电路存储信息发生随机错误的现象。在集成电路制造水平不断发展的当下,芯片的集成度越来越高,工作频率越来越快,工作电压和晶体管的阈值电压不断降低,晶体管尺寸也在逐年减小,所以芯片电路内部节点临界电荷量也在持续的减少。会导致电路软错误率不断上升。程序执行在一定程度上对软错误会有掩盖现象,故采用软错误易感性表征处理器结构的故障概率。软错误易感性是反映部件可靠性的软错误易感性分析中最常使用的指标之一,且软错误易感性越大,该部件越容易受到软错误的影响。
指令从发射队列中流出会受到指令流中的指令类型的比例与对应可用的功能单元数量的影响。若功能单元的数量不足,指令便无法从发射队列中发射,将使得发射队列中的队列占用增加,严重时会导致发射队列堵塞。造成发射队列的队列占用增大的原因主要来自两个方面:一方面是功能单元的数量不足,若某类型指令相关操作数都已就绪,但没有空闲的对应功能单元对其进行处理,将使得该指令无法发射;另一方面是某些延迟较长的指令执行时需要很长的周期,使得与其相关的指令只能在发射队列中等待,导致延迟发射。空闲的功能单元数量不足使得发射队列的队列占用增大的问题,可以通过增加功能单元的数量来解决。然而,增加功能单元数量的方法会使部件的面积增大,能量的损耗也会增大。
发明内容
为了解决现有存在的问题,本发明提供了一种基于指令与功能单元配置匹配度降低微处理器软错误易感性的方法,本发明方法在微处理器流水线的发射执行阶段进行作用,通过对指令混合比与功能单元的配置进行调整来降低发射队列的软错误易感性。本发明方法能够减少指令在发射队列中等待的时间,从而减缓延迟发射可能带来的软错误易感性。
具体的,本发明的技术方案为:
一种基于指令与功能单元配置匹配度降低微处理器软错误易感性的方法,所述方法包括以下步骤:
步骤一:对定时器设置初值,采用计数器对微处理器发射队列中等待发射指令的类型进行统计;
步骤二:对发射队列中已就绪的某类型指令的数量与可提供的符合该类型的功能单元的数量进行比较:
如果该类型指令的数量小于或等于可提供的符合该类型的功能单元的数量,则无需进行调节匹配,直接发射该类型指令,并将定时器清零;
如果该类型指令的数量大于可提供的符合该类型的功能单元的数量,此时,在指令解码对应的代码段新增一个匹配位,并判断该类型指令的数量与可提供的符合该类型的功能单元的数量的比值是否大于阈值,如果大于或等于阈值,则将该匹配位设为1,在此情况下,当微处理器向发射队列中分派指令时,会发现该匹配位为1,则暂时停止向发射队列中分派该类型指令;反之,如果小于或等于阈值,将该匹配位设为0,此时该类型指令可以正常地被分派到发射队列中,将定时器清零;其中,当匹配位为1时,取指和译码过程仍然继续执行,直至该类型指令的数量与可提供的符合该类型的功能单元的数量的比值小于或等于阈值,匹配位变为0,能够正常将该类型指令分派到发射队列中,并定时器清零;
步骤三:从步骤一循环,直至指令全部被发射;
其中,1≤阈值<4。
在本发明的一种实施方式中,步骤一中通过新增一个比较器识别指令操作码的标识位来获得等待发射指令的类型,同时计数器开始计数。
在本发明的一种实施方式中,定时器是用于记录当MIF(Memory InitializationFile,即内存初始化文件)的匹配度大于阈值且还未调节成功时的延迟指令分配的时间,即若某类型的指令与相应功能单元的数量之间不匹配(二者的比值大于阈值),则停止向发射队列中分派指令,停止的时间长度就是定时器的初值;若调节成功或者MIF匹配度小于或等于阈值,则将定时器清零,可继续对指令进行分派。
在本发明的一种实施方式中,所述阈值的具体大小与所执行的应用程序以及微处理器功能单元的配置有关,可以按照需求可以自行设置,例如:
当需要最大化降低发射队列的软错误易感性时,可以设置其阈值为较小数值,例如阈值=1,此时,可以通过明确可用功能单元的数量的方式,使得分派到发射队列的某类型指令数与对应得可用功能单元数量相等,以满足上述需求。
当只需要发射队列的软错误易感性满足某一指标时,可以设置其阈值为较大数值,例如2<阈值<4,此时,可以通过控制此阈值,从而控制分派到发射队列得某类型指令的数量,使得其软错误易感性有一定的降低。
在本发明的一种实施方式中,当发射队列中某类型的指令是对应可提供的功能单元数量的4倍时,通过实验可以确定,采用本发明方法不会对发射队列的软错误易感性有任何缓解作用,因此,本发明的阈值最大值要小于4,才能实现本发明的目的。
在本发明的一种实施方式中,所述微处理器不限,例如Alpha微处理器、ARM微处理器等。
在本发明的一种实施方式中,功能单元的平均延迟决定了定时器的初始值,所述功能单元的平均延迟为微处理器中不同类型功能单元执行延迟的平均值。例如,若某个微处理器有两种类型的功能单元,一种是整数加法运算,其执行延迟为1个时钟周期;另一种为整数乘法运算,其执行延迟为5个时钟周期,则定时器的初始值将设定为3个时钟周期。
在本发明的一种实施方式中,所述指令的类型为对应的微处理器中的指令类型中的一种或几种,例如整数或浮点数的加、减、乘或除法运算等。
在本发明的一种实施方式中,所述功能单元的类型为对应的微处理器中的功能单元类型中的一种或几种,例如整数或浮点数的加、减、乘或除法运算等对应的功能单元。
本发明还提供了上述方法在计算机领域的应用。
本发明具有以下有益效果:
本发明基于不同的指令类型与其对应的可提供的功能单元配置匹配度情况,对分派至发射队列的指令进行控制。在比较过程中,如果发现相应类型的指令数量与其对应的可提供的功能数量之间的比例大于所定阈值,则暂时不再向发射队列中分派指令;如果小于或等于所设阈值,此时指令可以正常地被分派到发射部件中,通过此种方式来减少指令在发射队列中等待的时间,使得发射队列对软错误的敏感性能够降低10%左右。
本发明方法无需进行复杂的计算既能够降低微处理器的软错误易感性,通过本发明方法能够使得指令有序地进行发射,简单易实现。
附图说明
图1为本发明方法的流程图。
具体实施方式
以下结合具体实施例,对本发明进行了详细说明。
实施例1
根据图1所示,本发明提供一种基于指令与功能单元配置匹配度降低微处理器软错误易感性的方法,所述方法在微处理器流水线的发射执行阶段,通过对指令与对应的功能单元的配置进行匹配,减少指令在发射队列中等待的时间,使得发射队列对软错误的敏感性降低。
所述方法包括以下步骤:
步骤一:对定时器设置初值,通过新增一个比较器识别指令操作码的标识位计数器来获得等待发射指令的类型,同时利用计时器对微处理器发射队列中等待发射指令的类型进行统计;
步骤二:对发射队列中已就绪的某类型指令的数量与可提供的符合该类型的功能单元的数量进行比较:
如果该类型指令的数量小于或等于可提供的符合该类型的功能单元的数量,则无需进行调节匹配,直接发射该类型指令,并将定时器清零;
如果该类型指令的数量大于可提供的符合该类型的功能单元的数量,此时,在指令解码对应的代码段新增一个匹配位,并判断该类型指令的数量与可提供的符合该类型的功能单元的数量的比值是否大于阈值,如果大于或等于阈值,则将该匹配位设为1,在此情况下,当微处理器向发射队列中分派指令时,会发现该匹配位为1,则暂时停止向发射队列中分派该类型指令;反之,如果小于或等于阈值,将该匹配位设为0,此时该类型指令可以正常地被分派到发射队列中,将定时器清零;其中,当匹配位为1时,取指和译码过程仍然继续执行,直至该类型指令的数量与可提供的符合该类型的功能单元的数量的比值小于或等于阈值,匹配位变为0,能够正常将该类型指令分派到发射队列中,并定时器清零;
步骤三:从步骤一循环,直至指令全部被发射;
其中,1≤阈值<4。
其中,所述阈值的具体大小与所执行的应用程序以及微处理器功能单元的配置有关,可以按照需求可以自行设置,例如:
当需要最大化降低发射队列的软错误易感性时,可以设置其阈值为较小数值,例如阈值=1,此时,可以通过明确可用功能单元的数量的方式,使得分派到发射队列的某类型指令数与对应得可用功能单元数量相等,以满足上述需求;
当只需要发射队列的软错误易感性满足某一指标时,可以设置其阈值为较大数值,例如2<阈值<4,此时,可以通过控制此阈值,从而控制分派到发射队列得某类型指令的数量,使得其软错误易感性有一定的降低;
当发射队列中某类型的指令是对应可提供的功能单元数量的4倍时,通过实验可以确定,采用本发明方法不会对发射队列的软错误易感性有任何缓解作用,因此,本发明的阈值最大值要小于4,才能实现本发明的目的。
其中,所述微处理器不限,例如Alpha微处理器、ARM微处理器等。
其中,功能单元的平均延迟决定了定时器的初始值,所述功能单元的平均延迟为微处理器中不同类型功能单元执行延迟的平均值。例如,若某个微处理器有两种类型的功能单元,一种是整数加法运算,其执行延迟为1个时钟周期;另一种为整数乘法运算,其执行延迟为5个时钟周期,则定时器的初始值将设定为3个时钟周期。
其中,所述指令的类型为对应的微处理器中的指令类型中的一种或几种,例如整数或浮点数的加、减、乘或除法运算等;所述功能单元的类型为对应的微处理器中的功能单元类型中的一种或几种,例如整数或浮点数的加、减、乘或除法运算等对应的功能单元。
本发明方法基于不同的指令类型与其对应的可提供的功能单元配置匹配度情况,以及根据实际需求,设置阈值对分派至发射队列的指令进行控制。在比较过程中,如果发现相应类型的指令数量与其对应的可提供的功能数量之间的比例大于所定阈值,则暂时不再向发射队列中分派指令;如果小于或等于所设阈值,此时指令可以正常地被分派到发射部件中,通过此种方式来减少指令在发射队列中等待的时间,能够使得发射队列对软错误的敏感性能够降低10%~20%左右。
虽然本发明已以较佳实施例公开如上,但其并非用以限定本发明,任何熟悉此技术的人,在不脱离本发明的精神和范围内,都可做各种的改动与修饰,因此本发明的保护范围应该以权利要求书所界定的为准。

Claims (10)

1.一种降低微处理器软错误易感性的方法,其特征在于,所述方法包括以下步骤:
步骤一:对定时器设置初值,采用计数器对微处理器发射队列中等待发射指令的类型和数量进行统计;
步骤二:对发射队列中已就绪的某类型指令的数量与可提供的符合该类型的功能单元的数量进行比较:
如果该类型指令的数量小于或等于可提供的符合该类型的功能单元的数量,则无需进行调节匹配,直接发射该类型指令,并将定时器清零;
如果该类型指令的数量大于可提供的符合该类型的功能单元的数量,此时,在指令解码对应的代码段新增一个匹配位,并判断该类型指令的数量与可提供的符合该类型的功能单元的数量的比值是否大于阈值,如果大于阈值,则将该匹配位设为1,在此情况下,当微处理器向发射队列中分派指令时,会发现该匹配位为1,则暂时停止向发射队列中分派该类型指令;反之,如果小于或等于阈值,将该匹配位设为0,此时该类型指令可以正常地被分派到发射队列中,将定时器清零;其中,当匹配位为1时,取指和译码过程仍然继续执行,直至该类型指令的数量与可提供的符合该类型的功能单元的数量的比值小于或等于阈值,匹配位变为0,能够正常将该类型指令分派到发射队列中,并定时器清零;
步骤三:从步骤一循环,直至指令全部被发射;
其中,1≤阈值<4。
2.根据权利要求1所述的一种降低微处理器软错误易感性的方法,其特征在于,步骤一中通过增加一个比较器识别指令操作码的标识位来获得等待发射指令的类型。
3.根据权利要求1或2所述的一种降低微处理器软错误易感性的方法,其特征在于,所述阈值的具体大小按照需求可以自行设置。
4.根据权利要求1~3任一所述的一种降低微处理器软错误易感性的方法,其特征在于,所述微处理器包括Alpha微处理器或ARM微处理器。
5.根据权利要求1~4任一所述的一种降低微处理器软错误易感性的方法,其特征在于,定时器的初始值即为功能单元的平均延迟。
6.根据权利要求5所述的一种降低微处理器软错误易感性的方法,其特征在于,所述功能单元的平均延迟为微处理器中不同类型功能单元执行延迟的平均值。
7.根据权利要求1~6任一所述的一种降低微处理器软错误易感性的方法,其特征在于,所述指令的类型为对应的微处理器中的指令类型中的一种或几种。
8.根据权利要求7任一所述的一种降低微处理器软错误易感性的方法,其特征在于,所述指令的类型包括整数或浮点数的加、减、乘或除法运算。
9.根据权利要求1~8任一所述的一种降低微处理器软错误易感性的方法,其特征在于,1≤阈值≤2。
10.权利要求1~9任一所述的一种降低微处理器软错误易感性的方法在计算机领域的应用。
CN201910418300.4A 2019-05-20 2019-05-20 一种降低微处理器软错误易感性的方法 Pending CN110147293A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910418300.4A CN110147293A (zh) 2019-05-20 2019-05-20 一种降低微处理器软错误易感性的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910418300.4A CN110147293A (zh) 2019-05-20 2019-05-20 一种降低微处理器软错误易感性的方法

Publications (1)

Publication Number Publication Date
CN110147293A true CN110147293A (zh) 2019-08-20

Family

ID=67592279

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910418300.4A Pending CN110147293A (zh) 2019-05-20 2019-05-20 一种降低微处理器软错误易感性的方法

Country Status (1)

Country Link
CN (1) CN110147293A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111124491A (zh) * 2019-12-12 2020-05-08 浪潮(北京)电子信息产业有限公司 一种批处理方法、装置、设备及存储介质
CN111124500A (zh) * 2019-12-12 2020-05-08 浪潮(北京)电子信息产业有限公司 一种指令执行方法、装置、设备及存储介质
CN114816536A (zh) * 2022-06-30 2022-07-29 飞腾信息技术有限公司 一种分支预测处理方法、装置、设备及存储介质
CN114830083A (zh) * 2019-12-10 2022-07-29 超威半导体公司 调度器队列分配突发模式

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103365731A (zh) * 2013-06-28 2013-10-23 中国科学院计算技术研究所 一种降低处理器软错误率的方法和系统
US20160283314A1 (en) * 2015-03-24 2016-09-29 Freescale Semiconductor, Inc. Multi-Channel Network-on-a-Chip
CN109656746A (zh) * 2018-11-29 2019-04-19 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 用于确定ecc存储器的刷新频率的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103365731A (zh) * 2013-06-28 2013-10-23 中国科学院计算技术研究所 一种降低处理器软错误率的方法和系统
US20160283314A1 (en) * 2015-03-24 2016-09-29 Freescale Semiconductor, Inc. Multi-Channel Network-on-a-Chip
CN109656746A (zh) * 2018-11-29 2019-04-19 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 用于确定ecc存储器的刷新频率的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
唐柳: "微处理器软错误脆弱性建模及缓解技术研究", 《中国博士学位论文全文数据库信息科技辑(月刊)》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114830083A (zh) * 2019-12-10 2022-07-29 超威半导体公司 调度器队列分配突发模式
CN111124491A (zh) * 2019-12-12 2020-05-08 浪潮(北京)电子信息产业有限公司 一种批处理方法、装置、设备及存储介质
CN111124500A (zh) * 2019-12-12 2020-05-08 浪潮(北京)电子信息产业有限公司 一种指令执行方法、装置、设备及存储介质
WO2021114548A1 (zh) * 2019-12-12 2021-06-17 浪潮(北京)电子信息产业有限公司 一种批处理方法、装置、设备及存储介质
CN111124491B (zh) * 2019-12-12 2022-04-22 浪潮(北京)电子信息产业有限公司 一种批处理方法、装置、设备及存储介质
CN114816536A (zh) * 2022-06-30 2022-07-29 飞腾信息技术有限公司 一种分支预测处理方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN110147293A (zh) 一种降低微处理器软错误易感性的方法
US8468532B2 (en) Adjusting CPU time allocated to next thread based on gathered data in heterogeneous processor system having plurality of different instruction set architectures
Brown et al. How fast is fast enough? Choosing between Xenomai and Linux for real-time applications
US10209998B2 (en) Multi-threading processor and a scheduling method thereof
US7689773B2 (en) Methods and apparatus for estimating fair cache miss rates on a chip multiprocessor
US20040010785A1 (en) Application execution profiling in conjunction with a virtual machine
Ziccardi et al. EPC: extended path coverage for measurement-based probabilistic timing analysis
Lu et al. vFair: latency-aware fair storage scheduling via per-IO cost-based differentiation
US10176076B2 (en) Breaking code execution based on time consumption
US8156496B2 (en) Data processing system and method
Reghenzani et al. A probabilistic approach to energy-constrained mixed-criticality systems
CN109876446B (zh) 一种检测游戏贴图和网格在内存中占用分布的方法和装置
US10846086B2 (en) Method for managing computation tasks on a functionally asymmetric multi-core processor
CN103218219A (zh) 紧凑函数跟踪
US10459705B2 (en) Latency measurement technology
US7089406B2 (en) Method and apparatus for controlling program instruction completion timing for processor verification
KR102443089B1 (ko) 컴퓨팅 디바이스에서의 동기화
KR101892273B1 (ko) 스레드 프로그레스 트래킹 방법 및 장치
CN104685473B (zh) 一种软件测试方法及装置
US20140298074A1 (en) Method of calculating cpu utilization
Kwasnick et al. Setting use conditions for reliability modeling
Cook et al. A statistical performance model of the opteron processor
US20180052728A1 (en) Root cause candidate determination in multiple process systems
Uddin et al. Signature-based high-level simulation of microthreaded many-core architectures
US20160292027A1 (en) Systems and methods for managing task watchdog status register entries

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190820

RJ01 Rejection of invention patent application after publication