当前位置: 首页 > 专利查询>英特尔公司专利>正文

纠正软错误的固件机制制造技术

技术编号:2876685 阅读:195 留言:0更新日期:2012-04-11 18:40
一种计算机系统,包括有双执行核心的处理器和存储错误恢复例行程序的非易失性存储器。当处理器处于冗余执行模式时处理器的执行核心以固定的方式操作,当处理器处于分离执行模式时它们独立地操作。当处理器在以冗余执行模式执行的同时检测软错误时错误恢复例行程序被调用。错误恢复例行程序转换处理器到分离执行模式。在分离模式中,每个执行核心保存未损坏的处理器状态数据到指定的存储单元并用来自另一个执行核心的相应的处理器状态数据更新任何已损坏的数据。错误恢复例行程序返回处理器到冗余模式,用恢复的处理器状态数据初始化每个执行核心,并返回处理器的控制到检测到软错误时正在执行的程序线程。(*该技术在2020年保护过期,可自由使用*)

【技术实现步骤摘要】
【国外来华专利技术】专利技术
技术介绍
领域本专利技术涉及微处理器,尤其涉及能够以高可靠性模式操作的微处理器。
技术介绍
当α粒子或宇宙射线透过集成电路并更改存储在电路的电压波节上的电荷之时会出现软错误。如果电荷改变足够大,表示一种逻辑状态的电压就可能会被改变为表示不同逻辑状态的电压。例如表示逻辑真状态的电压可能会被改变为表示逻辑假状态的电压,而且体现该逻辑状态的任何数据都将遭到损坏。伴随着半导体加工技术向着更小的尺寸和更低的操作电压发展,集成电路,例如微处理器(“处理器”)的软错误率(SER)也增加了。更小的工艺尺寸允许在处理器电路小片上实现更高的器件密度。这增加了α粒子或宇宙射线透过处理器电压波节中之一的可能性。更低的操作电压意味着更小的电荷分裂就足以改变由节点电压表示的逻辑状态。这两种趋势将来都指向了更高的SER。如果在任何已遭破坏的数据被用来更新处理器的结构状态之前检测到软错误,它们就可以在处理器中得到纠正。处理器常常采用基于奇偶性的机制来检测由软错误产生的数据损坏。当奇偶位被存储时它与各块数据相关。这个奇偶位是根据数据块中是否有奇数或偶数个1而被设置为1或0的。当数据块被从它的存储单元读出时,这个块中1的个数将与奇偶位进行比较。这两个值间的差异指示该数据块已经遭到了损坏。这两个值一致则指示或者未出现损坏或者已被改变了2(或4...)位。由于后者发生的概率很低,因而奇偶性给数据是否已遭损坏提供了可靠的指示。纠错码(ECC)是跟踪每个数据块附加信息的基于奇偶性的机制。附加信息允许识别并纠正损坏位。奇偶/ECC机制已经被广泛应用到了高速缓冲存储器、存储器和类似的数据存储阵列。这些结构有相对较高的数据存储节点密度,而且即使在当前的器件密度上对软错误也很敏感。它们的固定阵列结构使得实现奇偶/ECC机制相对容易一些。处理器上其余的电路包括数据通路、控制逻辑电路、执行逻辑电路和寄存器(”执行核心”)。这些电路的不同结构和它们在处理器电路小片(processor die)上的分布使得应用奇偶/ECC机制更为困难。检测执行核心中的软错误的一种方法是在双倍的执行核心上处理指令并比较按照逐指令的基础由每一条指令确定的结果(“冗余执行”)。例如,一个计算机系统包括两个单独的处理器,可以引导它们或以对称多处理(“SMP”)模式或以功能冗余校验(“FRC”)模式运行。以SMP模式,指令执行被分配到各个处理器之间以提供比单处理器系统更高的整体性能。以FRC模式,一个处理器通常执行代码,第二个处理器在与提供给第一个处理器相同的数据上执行相同的指令。如果第二个处理器检测到在它的操作和第一个处理器的操作之间存在差异,它就用信号通知产生了错误。通过重启计算机系统只能在SMP和FRC之间转换操作模式。双处理器方法成本较高(就硅而论)。另外,通过其进行结果比较的处理器内部信号传递太慢,以至于无法在损坏的数据更新处理器的结构状态之前检测到它。因此,这种方法不适于纠正检测到的软错误。另一种计算机系统在单个处理器芯片上使用双执行核心提供执行冗余。两个执行核心以FRC模式操作,而且受ECC保护的校验点寄存器存储处理器中间状态上的信息。当在一个代码段中检测到错误时,处理器执行微代码例行程序以利用校验点寄存器来恢复处理器到最后来遭破坏的处理器状态。随后控制返回到该代码段,并从遇到错误的指令开始。错误恢复微代码例行程序存储在处理器芯片上,使它难以更新或修改。另外,足够灵活以纠正大范围错误的例行程序势必相对复杂。这些例行程序的微代码实现方式占据了处理器电路小片上的大量面积。本专利技术解决了可用高可靠性计算机系统的这些和其它不足。专利技术概述本专利技术提供了用于在双执行核心处理器中恢复软错误的固件机制,双执行核心处理器能够以冗余模式和分离模式操作执行核心。依据本专利技术的一种方法在处理器以冗余模式操作执行核心时检测软错误。在每个执行核心上执行错误恢复例行程序以保存来自与该执行核心相关的存储设备的未损坏的数据。根据保存的数据恢复处理器状态数据,并用处理器状态数据初始化第一和第二执行核心。依据本专利技术的计算机系统包括一个双执行核心处理器和存储错误恢复例行程序的非易失性存储器。当处理器以冗余模式操作而检测软错误时错误恢复例行程序被调用。该例行程序转换处理器到分离模式,该模式下每个执行核心将其相关的存储设备中的未损坏数据保存到一个指定的存储单元。该例行程序依据所保存的数据恢复处理器状态数据。附图概述可以参考下列图来理解本专利技术,在这些图中同样的元件由同样的数字来表示。提供这些图是为了举例说明本专利技术的所选实施方案,并不意味着要限制本专利技术的范围。附图说明图1是适于实现本专利技术的计算机系统的一种实施方案的框图。图2A是图1中双执行核心处理器的一种实施方案的框图。图2B是图2A中处理器FET阶段的一种实施方案的框图。图2C是图2A中处理器的校验单元的一种实施方案的框图。图3是说明依照本专利技术用于从软错误恢复的方法的一种实施方案的流程图。图4是说明由执行核心执行的错误恢复例行程序的一种实施方案的流程图。图5A和5B是说明用于协调用于软错误恢复的保存数据的不同机制的实施方案的框图。图6是说明图5A的数据协调机制的一种实施方案的流程图。图7是当双核心处理器以分离模式操作时提供群集器级冗余的执行核心的一种实施方案的框图。专利技术详述下面的论述阐明了大量特定的细节以提供对本专利技术的彻底理解。然而,从本公开内容受益的本领域的普通技术人员将意识到可以在没有这些特定细节的情况下实践本专利技术。另外,为了把注意力集中在本专利技术的特性上,对多种众所周知的方法、例行程序、部件和电路没有进行详细描述。本专利技术提供了一种在双核心处理器中纠正软错误的灵活方法,该双核心处理器可以在冗余模式和分离模式之间动态转换。在冗余模式中,处理器执行相同的代码段上以固定方式(in lock step)操作执行核心并比较结果以识别错误。在分离模式中,执行核心可以独立处理指令,例如,执行核心可以在给定的时钟周期在不同的指令上操作。对本专利技术的一种实施方案来说,冗余模式可能是高可靠性(HR)处理器执行模式,它减少了执行临界代码段时发生软错误的风险。分离模式可能是高性能(HP)处理器执行模式,它可以通过增加所选代码可用的执行资源来更快地执行所选代码。分离模式也可以只用于所选的目的,例如错误恢复或加速(boostrapping)处理器。分离模式的重要特征是它允许执行核心“独立”操作,即每个执行核心在给定的时钟周期上可执行不同的指令。依照本专利技术,错误恢复例行程序存储在非易失性存储器中。当以冗余模式实现一个程序线程的处理器检测到软错误时访问恢复例行程序。可以通过两个执行核心中结果之间的差异指示错误。该例行程序转换处理器到分离模式,该模式中每个执行核心检查它的用于已损坏数据的相关存储单元。把未损坏的数据复制到指定的存储单元并从未损坏的数据恢复出足够的处理器状态以再继续被中断的程序线程。恢复例行程序用已恢复的处理器状态数据初始化执行核心。对本专利技术的一种实施方案来说,与每个执行核心相关的不同资源是受奇偶保护的,并且恢复例行程序执行奇偶校验以识别执行核心中任何遭到破坏的数据。举例来说受奇偶保护的资源可以包括通用寄存器、浮点寄存器、控制和状态寄存器、低级高速缓冲存储器等。通常,用来存储处本文档来自技高网...

【技术保护点】
一种计算机系统包括:具有第一和第二执行核心和校验单元的处理器,当处理器处于分离模式时第一和第二执行核心独立地处理指令,当处理器处于冗余模式时它们以固定的方式处理同一的指令,并且当处理器处于冗余模式时校验单元比较来自第一和第二执行核心的结 果;和其中存储恢复例行程序的非易失性存储器,该恢复例行程序在校验单元检测错误时转换处理器到分离模式,它还从至少一个执行核心识别未损坏的处理器状态数据,并用识别出的处理器状态数据初始化第一和第二执行核心。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:NT夸克
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1