当前位置: 首页 > 专利查询>伊姆西公司专利>正文

用于在总线结构中检测及处理错误的方法和系统技术方案

技术编号:14277638 阅读:91 留言:0更新日期:2016-12-24 20:27
本发明专利技术的实施方式提供一种用于在总线结构中检测及处理错误的方法和系统。该方法包括:从与所述总线关联的多个硬件寄存器中获取错误信息;响应于确定所述多个硬件寄存器中的一个或多个硬件寄存器中的所述错误的数量超过预定阈值,检测与所述一个或多个硬件寄存器对应的硬件设备的性能;以及响应于确定与所述一个或多个硬件寄存器对应的硬件设备中的一个硬件设备的性能劣化,确定所述一个硬件设备出现错误。通过该方法,可以对总线结构中出现的错误自动地进行检测及处理,一方面节约了成本,另一方面也提高了错误检测的效率。

【技术实现步骤摘要】

本专利技术的实施方式涉及故障恢复领域,更具体地,涉及一种用于在总线结构中检测及处理错误的方法和系统
技术介绍
总线是在计算机系统中用于连接各个部件的通信干线。在通过总线互联的部件的架构中,如果发生错误,往往很难断定发生错误的具体位置,例如是总线本身的错误还是所连接的部件的错误,也难以从总线错误中进行恢复。现有技术中对这一类问题的解决方法并没有形成完整的体系,主要还是依赖于工程师的手动分析。例如,可能需要工程师手动分析可能相关的所有日志,并且通过替代其中的一些硬件设备来尝试对错误事项分类。由于上述手动解决方法的流程通常需要客户首先观察到服务劣化问题达数小时或数天、然后提出服务请求,再由工程师开始通过访问机器来查看/分析日志来查看问题,最终可能需要物理地替换硬件设备以分类/修复该问题,这会导致长时间的服务劣化,既费时又费力。另一方面,所获得的效果也取决于工程师的熟练程度,使得所获得的效果非常不稳定。由此,亟需提供一种能够在总线结构中有效地自动检测和处理错误的方法和系统。
技术实现思路
为了解决现有技术中存在的上述问题,本说明书提出如下方案。根据本专利技术的第一方面,提供一种用于在总线结构中检测及处理错误的方法,包括:从与所述总线关联的多个硬件寄存器中获取错误信息;响应于确定所述多个硬件寄存器中的一个或多个硬件寄存器
中的所述错误的数量超过预定阈值,检测与所述一个或多个硬件寄存器对应的硬件设备的性能;以及响应于确定与所述一个或多个硬件寄存器对应的硬件设备中的一个硬件设备的性能劣化,确定所述一个硬件设备出现错误。在本专利技术的可选实施方式中,该方法进一步包括:确定所述一个硬件设备是否存在备用设备;以及响应于存在备用设备,使用所述备用设备对所述一个硬件设备进行故障转移。在本专利技术的可选实施方式中,该方法进一步包括:重置所述一个硬件设备。在本专利技术的可选实施方式中,该方法进一步包括:在重置所述一个硬件设备之后,至少部分地基于所述一个硬件设备的故障恢复历史来决定是否从所述备用设备切换回所述一个硬件设备。在本专利技术的可选实施方式中,所述从与所述总线关联的多个硬件寄存器中获取错误信息包括:周期性地轮询所述多个硬件寄存器以获取所述错误信息。在本专利技术的可选实施方式中,轮询所述多个硬件寄存器的周期根据所述错误的数量而动态调整。在本专利技术的可选实施方式中,所述从与所述总线关联的多个硬件寄存器中获取错误信息包括:监听来自所述硬件寄存器的、报告所述错误信息的中断消息,以获取所述错误信息。在本专利技术的可选实施方式中,当所述错误的数量大于预定阈值时,禁用所述中断消息;并且通过周期性地轮询所述多个硬件寄存器来获取所述错误信息。在本专利技术的可选实施方式中,所述与所述一个或多个硬件寄存器对应的硬件设备的性能通过性能检测器来检测,所述性能检测器基于与所述多个硬件寄存器对应的硬件设备的类型来设置。在本专利技术的可选实施方式中,所述总线包括PCIe总线。根据本专利技术的第二方面,提供一种用于在总线结构中检测及处理错误的系统,包括:错误获取单元,被配置为从与所述总线关联的多个硬件寄存器中获取错误信息;性能检测单元,被配置为响应于确定所述多个硬件寄存器中的一个或多个硬件寄存器中的所述错误的数量超过预定阈值,检测与所述一个或多个硬件寄存器对应的硬件设备的性能;以及错误判定单元,被配置为响应于确定与所述一个或多
个硬件寄存器对应的硬件设备中的一个硬件设备的性能劣化,确定所述一个硬件设备出现错误。在本专利技术的可选实施方式中,该系统进一步包括:备用设备确定单元,被配置为确定所述一个硬件设备是否存在备用设备;以及故障转移单元,被配置为响应于存在备用设备,使用所述备用设备对所述一个硬件设备进行故障转移。在本专利技术的可选实施方式中,该系统进一步包括:重置单元,被配置为重置所述一个硬件设备。在本专利技术的可选实施方式中,该系统进一步包括:故障恢复单元,被配置为在重置所述一个硬件设备之后,至少部分地基于所述一个硬件设备的故障恢复历史来决定是否从所述备用设备切换回所述一个硬件设备。在本专利技术的可选实施方式中,所述从与所述总线关联的多个硬件寄存器中获取错误信息包括:周期性地轮询所述多个硬件寄存器以获取所述错误信息。在本专利技术的可选实施方式中,轮询所述多个硬件寄存器的周期根据所述错误的数量而动态调整。在本专利技术的可选实施方式中,所述从与所述总线关联的多个硬件寄存器中获取错误信息包括:监听来自所述硬件寄存器的、报告所述错误信息的中断消息,以获取所述错误信息。在本专利技术的可选实施方式中,当所述错误的数量大于预定阈值时,禁用所述中断消息;并且通过周期性地轮询所述多个硬件寄存器来获取所述错误信息。在本专利技术的可选实施方式中,所述与所述一个或多个硬件寄存器对应的硬件设备的性能通过性能检测器来检测,所述性能检测器基于与所述多个硬件寄存器对应的硬件设备的类型来设置。在本专利技术的可选实施方式中,所述总线包括PCIe总线。附图说明通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。图1图示了根据本专利技术示例实施方式的用于在总线结构中检测及处理错误的方法100的流程图。图2图示了通过PCIe接口连接的存储设备的示意性架构200。图3图示了根据本专利技术示例实施方式的用于在总线结构中检测及处理错误的系统300的流程图。图4示出了适于用来实践本专利技术实施方式的计算机系统400的示意性框图。具体实施方式下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整的传达给本领域的技术人员。图1图示了根据本专利技术示例实施方式的用于在总线结构中检测及处理错误的方法100的流程图。为了说明的方便起见,下文在示例中主要以当前常用的PCIe总线作为示例加以说明,然而,本领域技术人员应当理解,相关的专利技术构思对诸如PCI之类的其他类型的总线也同样适用,本专利技术在此方面不受限制。如图1所示,方法100开始之后,首先进到步骤S101,从与所述总线关联的多个硬件寄存器中获取错误信息。这里所称的与总线关联的多个硬件寄存器包括与总线结构中的每个总线设备关联的寄存器。例如,在总线为PCIe总线的情况下,总线设备可以包括PCIe根端口(root port)、交换机以及端点设备等。在实现中,获取错误信息的方式至少包括轮询和中断两种方式。具体而言,例如可以通过周期性地轮询所述多个硬件寄存器来获取所述错误信息;或者,可以通过监听来自所述硬件寄存器的、报告所述错误信息的中断消息,来获取所述错误信息。本领域技术人员应当理解,其他可能的错误信息获取方式也在本专利技术的构思之内。在通过轮询硬件寄存器来获取错误信息的场景下,轮询的策略可以是用户可配置的。例如,轮询的周期可以根据错误的数量来动态调整。譬如,可以在初始时以较长的周期进行轮询,在没有检测到寄存器中的错误信息时保持较长轮询周期不变;而在任何硬件寄存器中检测到任何错误信息时缩短轮询周期(例如,设置为原来轮询周期的
一半)本文档来自技高网
...
用于在总线结构中检测及处理错误的方法和系统

【技术保护点】
一种用于在总线结构中检测及处理错误的方法,包括:从与所述总线关联的多个硬件寄存器中获取错误信息;响应于确定所述多个硬件寄存器中的一个或多个硬件寄存器中的所述错误的数量超过预定阈值,检测与所述一个或多个硬件寄存器对应的硬件设备的性能;以及响应于确定与所述一个或多个硬件寄存器对应的硬件设备中的一个硬件设备的性能劣化,确定所述一个硬件设备出现错误。

【技术特征摘要】
1.一种用于在总线结构中检测及处理错误的方法,包括:从与所述总线关联的多个硬件寄存器中获取错误信息;响应于确定所述多个硬件寄存器中的一个或多个硬件寄存器中的所述错误的数量超过预定阈值,检测与所述一个或多个硬件寄存器对应的硬件设备的性能;以及响应于确定与所述一个或多个硬件寄存器对应的硬件设备中的一个硬件设备的性能劣化,确定所述一个硬件设备出现错误。2.根据权利要求1所述的方法,进一步包括:确定所述一个硬件设备是否存在备用设备;以及响应于存在备用设备,使用所述备用设备对所述一个硬件设备进行故障转移。3.根据权利要求2所述的方法,进一步包括:重置所述一个硬件设备。4.根据权利要求3所述的方法,进一步包括:在重置所述一个硬件设备之后,至少部分地基于所述一个硬件设备的故障恢复历史来决定是否从所述备用设备切换回所述一个硬件设备。5.根据权利要求1所述的方法,其中,所述从与所述总线关联的多个硬件寄存器中获取错误信息包括:周期性地轮询所述多个硬件寄存器以获取所述错误信息。6.根据权利要求5所述的方法,其中,轮询所述多个硬件寄存器的周期根据所述错误的数量而动态调整。7.根据权利要求1所述的方法,其中,所述从与所述总线关联的多个硬件寄存器中获取错误信息包括:监听来自所述硬件寄存器的、报告所述错误信息的中断消息,以获取所述错误信息。8.根据权利要求7所述的方法,其中,当所述错误的数量大于预定阈值时,禁用所述中断消息;并且通过周期性地轮询所述多个硬件寄存器来获取所述错误信息。9.根据权利要求1所述的方法,其中,所述与所述一个或多个硬件寄存器对应的硬件设备的性能通过性能检测器来检测,所述性能检测器基于与所述多个硬件寄存器对应的硬件设备的类型来设置。10.根据权利要求1所述的方法,其中,所述总线包括PCIe总线。11.一种用于在总线结构中检测及处理错误的系统,包括:错误获取单元,被配置为从与所述总线关联的...

【专利技术属性】
技术研发人员:邹勇吕满王文博王龙
申请(专利权)人:伊姆西公司
类型:发明
国别省市:美国;US

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

1