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

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

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

【技术实现步骤摘要】

本专利技术涉及微处理器,尤其涉及能够以高可靠性模式操作的微处 理器。
技术介绍
当a粒子或宇宙射线透过集成电路并更改存储在电路的电压波节 上的电荷之时会出现软错误。如果电荷改变足够大,表示一种逻辑状 态的电压就可能会被改变为表示不同逻辑状态的电压。例如表示逻辑 真状态的电压可能会被改变为表示逻辑假状态的电压,而且包含该逻 辑状态的任何数据都将遭到损坏。伴随着半导体加工技术向着更小的尺寸和更低的操作电压发展, 集成电路,例如微处理器("处理器,,)的软错误率(SER)也增加了。 更小的工艺尺寸允许在处理器电路小片上实现更高的器件密度。这增 加了 a粒子或宇宙射线透过处理器电压波节中之一的可能性。更低的 操作电压意味着更小的电荷分裂就足以改变由节点电压表示的逻辑状 态。这两种趋势将来都指向了更高的SER。如果在任何已遭破坏的数据 被用来更新处理器的结构状态之前检测到软错误,它们就可以在处理 器中得到纠正。处理器常常采用基于奇偶性的机制来检测由软错误产生的数据损 坏。当奇偶位被存储时它与各个数据块相关。这个奇偶位是根据数据 块中有奇数或偶数个1而被设置为1或0的。当数据块被从它的存储 单元读出时,将该块中1的个数与奇偶位进行比较。这两个值不同表 示数据块已经遭到了损坏。这两个值一致则表示或者未出现损坏或者 已有2 (或4…)位被改变。由于后者发生的概率很低,因而奇偶性给 数据是否已遭损坏提供了可靠的指示。纠错码(ECC)是跟踪每个数据4块附加信息的基于奇偶性的机制。附加信息允许识别并纠正损坏位。奇偶/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