抓取NVME硬盘trace的方法、装置、设备及系统与流程

文档序号:17130434发布日期:2019-03-16 01:07阅读:580来源:国知局
本发明实施例涉及服务器应用
技术领域
:,特别是涉及一种抓取nvme硬盘trace的方法、装置、设备、系统及计算机可读存储介质。
背景技术
::nvme(non-volatilememoryexpress,非易失性内存主机控制器接口规范)硬盘为目前服务器领域性能比较高端的一种硬盘类型,其接口基于pcie(peripheralcomponentinterconnectexpress,高速串行计算机扩展总线标准)协议,具有接口速率高、io吞吐快的特点。由于nvme硬盘性能较高,相应的,其对服务器系统兼容性的要求也相对较高。常见的nvme硬盘在服务器系统中的故障可包括uncorrectablefatalerror、correctablenon-fatalerror和correctableerror等,表象通常为掉盘、宕机、降速等等。在做nvme硬盘在服务器系统中兼容性测试时,往往需要进行长时间各种模型的测试及调试,找出nvme硬盘和服务器系统不兼容的原因,以此来保证服务器系统的可用性。在对nvme硬盘进行调试时,相关技术使用pcie协议分析仪自带的trigger(触发条件)功能抓取nvme硬盘的接口协议实际运行数据(也即抓取nvme硬盘的trace)来分析各种不兼容的错误。针对具体的故障类型,可以使用bios(basicinputoutputsystem,基本输入输出系统)监控到pcie出现错误时,解析出具体的故障,然后针对性的通过pch(platformcontrollerhub,俗称集成南桥)上的gpio(generalpurposeinputoutput,通用输入/输出或总线扩展器)触发协议分析仪的外部trigger,该方法需要针对不同的故障类型进行定制bios。采用协议分析仪厂商原厂软件trigger的方式,trigger类型有限,只能针对固定几种类型的错误进行trigger,不能很好的适应服务器复杂系统中出现的复杂错误。由于pcie接口传输速率快,加上协议分析仪本身缓存容量受限,所以如果不能针对具体错误类型有效的进行触发,则往往无法抓取有效的pcietrace进行分析。更有甚者,一些错误很难复现,一旦错过,则又需要等待很长时间,浪费了大量人力物力。技术实现要素:本公开实施例提供了一种抓取nvme硬盘trace的方法、装置、设备、系统及计算机可读存储介质,无需针对不同故障错误类型定制相应的bios或trigger,精确、有效的抓取出nvme硬盘故障错误对应的pcietrace。为解决上述技术问题,本发明实施例提供以下技术方案:本发明实施例一方面提供了一种抓取nvme硬盘trace的系统,包括bmc、bios、治具板与协议分析仪,所述bmc分别与所述治具板和所述bios相连,所述治具板与所述协议分析仪相连;所述bios用于在nvme硬盘所在pcie链路发生错误时,采集所述pcie链路的寄存器错误信息,并将所述寄存器错误信息发送至所述bmc;所述bmc用于将所述寄存器错误信息发送至治具板;所述治具板包括处理器和拨码开关,用于在所述拨码开关当前对应的错误类型与所述处理器解析所述寄存器错误信息的错误类型相一致时,触发所述协议分析仪抓取所述nvme硬盘的pcietrace。可选的,所述治具板的gpio引脚与所述协议分析仪的trigger连接器相连,所述触发所述协议分析仪抓取所述nvme硬盘的pcietrace为:置位所述治具板的gpio引脚,以触发所述协议分析仪抓取所述nvme硬盘的pcietrace。可选的,通过线缆将服务器主板上所述bmc的rs-232接口连接到所述治具板的输入端,所述治具板与所述协议分析仪通过同轴线缆相连。可选的,所述bios通过kcs链路将所述寄存器错误信息发送至所述bmc。本发明实施例另一方面提供了一种抓取nvme硬盘trace的方法,应用于治具板,包括:获取寄存器错误信息,所述寄存器错误信息为bios在nvme硬盘所在pcie链路发生错误时采集的寄存器信息;解析所述寄存器错误信息携带的地址信息得到对应的错误类型;判断所述错误类型是否和拨码开关当前对应的错误类型相一致;若是,则触发协议分析仪抓取所述nvme硬盘的pcietrace;其中,所述治具板所述协议分析仪相连,所述寄存器错误信息为所述bios通过bmc发送至所述治具板;所述寄存器错误信息的地址信息与错误类型具有对应关系。可选的,所述治具板的gpio引脚与所述协议分析仪的trigger连接器相连,所述触发协议分析仪抓取所述nvme硬盘的pcietrace包括:发送置位gpio引脚的指令,以触发协议分析仪抓取所述nvme硬盘的pcietrace。可选的,所述bios通过kcs链路将所述寄存器错误信息发送至所述bmc,所述bmc将接收到的寄存器错误信息通过rs-232串口发送至所述治具板。本发明实施例还提供了一种抓取nvme硬盘trace的装置,应用于治具板,包括:信息获取模块,用于获取寄存器错误信息,所述寄存器错误信息为bios在nvme硬盘所在pcie链路发生错误时采集的寄存器信息;所述寄存器错误信息为所述bios通过bmc发送至所述治具板;所述治具板所述协议分析仪相连;错误类型解析模块,用于解析所述寄存器错误信息携带的地址信息得到对应的错误类型;所述寄存器错误信息的地址信息与错误类型具有对应关系;错误类型匹配结果判断模块,判断所述错误类型是否和拨码开关当前对应的错误类型相一致;触发模块,用于在所述错误类型和拨码开关当前对应的错误类型相一致时,触发协议分析仪抓取所述nvme硬盘的pcietrace。本发明实施例还提供了一种抓取nvme硬盘trace的设备,包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如前任一项所述抓取nvme硬盘trace的方法的步骤。本发明实施例最后还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有抓取nvme硬盘trace的程序,所述抓取nvme硬盘trace的程序被处理器执行时实现如前任一项所述抓取nvme硬盘trace的方法的步骤。本发明实施例提供了一种抓取nvme硬盘trace的系统,包括bmc、bios、协议分析仪及包含处理器和拨码开关的治具板。bios在nvme硬盘所在pcie链路发生错误时,采集pcie链路的寄存器错误信息,并将寄存器错误信息发送至bmc,然后bmc将接收到的信息发送至治具板;治具板在拨码开关当前对应的错误类型与处理器解析寄存器错误信息的错误类型相一致时,触发协议分析仪抓取nvme硬盘的pcietrace。本申请提供的技术方案的优点在于,利用bios监控nvme硬盘所在pcie链路的运行状态信息,并及时抓取发生故障时的寄存器错误信息,治具板的处理器通过解析这些寄存器错误信息的类型,并通过与拨码开关选择的错误类型的比对控制协议分析仪trigger抓取trace,实现了准确、高效的抓取nvme硬盘的pcietrace,不仅解决了相关技术需要针对不同错误类型定制对应的bios或trigger的现状,用户还可通过拨码开关自由选择所需要抓取的错误类型抓取出对应的pcietrace进行分析,有利于高效且准确的找出nvme硬盘和服务器系统不兼容的原因。此外,本发明实施例还针对抓取nvme硬盘trace的方法提供了相应的实现装置、设备及计算机可读存储介质,进一步使得所述方法更具有实用性,所述装置、设备及计算机可读存储介质具有相应的优点。应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。附图说明为了更清楚的说明本发明实施例或相关技术的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本公开根据一示例性实施例示出的抓取nvme硬盘trace的系统的结构框架示意图;图2为本发明实施例提供的一种抓取nvme硬盘trace的方法的流程示意图;图3为本发明实施例提供的抓取nvme硬盘trace的装置的一种具体实施方式结构图。具体实施方式为了使本
技术领域
:的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。在介绍了本发明实施例的技术方案后,下面详细的说明本申请的各种非限制性实施方式。首先参见图1,图1为本发明实施例提供的一种抓取nvme硬盘trace系统的结构框架示意图,本发明实施例可包括以下内容:抓取nvme硬盘trace系统可包括bmc(baseboardmanagementcontroller,基板管理控制器)1、bios2、治具板3与协议分析仪4。bmc1分别与治具板3和bios2相连,治具板3与协议分析仪4相连,bios2与nvme硬盘相连。bmc1和bios2均位于服务器主板,可选的,bios2可通过kcs链路与bmc1进行通讯。可选的,可通过线缆将服务器主板上bmc1的rs-232接口连接到治具板3的输入端,治具板3可通过其gpio引脚作为输出端,可通过同轴线缆相连与协议分析仪4的trigger连接器相连。bios1实时监控连接nvme硬盘的pcie链路,在nvme硬盘所在pcie链路发生错误时,也即当相关链路出现pcie报错时,采集pcie链路的寄存器错误信息,并可通过ksc链路将寄存器错误信息发送至bmc2。其中,bios1检测pcie链路发生错误和采集pcie链路的寄存器错误信息的实现过程可参阅相关技术的描述,此处,便不再赘述。bmc2在接收到bios1发送的信息后,可将接收到的寄存器错误信息通过串口(rs-232)发送至治具板3中。治具板3包括处理器和拨码开关,拨码开关的每一个位置对应一种寄存器错误类型,例如unsupportedrequest、badtlp、baddllp、malformedtlp等等。用户可通过拨码开关同时选择1个或者多个需要触发的寄存器错误类型,也即用户可通过拨码开关选择nvme硬盘和服务器系统不兼容的测试选项。治具板3的处理器可对接收到的寄存器错误信息进行解析,得到其相应的错误类型。处理器可根据寄存器错误信息中携带的地址信息解析得到错误类型时,寄存器错误信息中携带的地址信息为自定义的地址,地址信息和错误类型种类唯一对应,需要说明的是,此处的地址信息不同于其在配置空间中的地址,寄存器错误信息携带的地址信息为一些自定义地址,例如携带的地址为11122时,该地址对应的寄存器错误信息的种类为a,而携带的地址为11221时,该地址对应的寄存器错误信息的种类为b。当拨码开关当前对应的错误类型与处理器解析寄存器错误信息的错误类型相一致时,处理器控制触发协议分析仪4抓取nvme硬盘的pcietrace,例如可通过控制输出端引脚的置位来进行触发trace的抓取。举例来说,当治具板3的gpio(generalpurposeinputoutput,通用输入/输出)引脚与协议分析仪4的trigger连接器相连,置位治具板3的gpio引脚触发协议分析仪4抓取nvme硬盘的pcietrace。在本发明实施例提供的技术方案中,利用bios监控nvme硬盘所在pcie链路的运行状态信息,并及时抓取发生故障时的寄存器错误信息,治具板的处理器通过解析这些寄存器错误信息的类型,并通过与拨码开关选择的错误类型的比对控制协议分析仪trigger抓取trace,实现了准确、高效的抓取nvme硬盘的pcietrace,不仅解决了相关技术需要针对不同错误类型定制对应的bios或trigger的现状,用户还可通过拨码开关自由选择所需要抓取的错误类型抓取出对应的pcietrace进行分析,有利于高效且准确的找出nvme硬盘和服务器系统不兼容的原因。请首先参见图2,图2为本发明实施例提供的一种抓取nvme硬盘trace的方法的流程示意图,例如可用于上述实施例的治具板,本发明实施例可包括以下内容:s201:获取寄存器错误信息,寄存器错误信息为bios在nvme硬盘所在pcie链路发生错误时采集的寄存器信息。s202:解析寄存器错误信息携带的地址信息得到对应的错误类型。寄存器错误信息的地址信息与错误类型具有对应关系。s203:判断错误类型是否和拨码开关当前对应的错误类型相一致,若是,则执行s204。s204:触发协议分析仪抓取nvme硬盘的pcietrace。治具板协议分析仪相连,寄存器错误信息为bios通过bmc发送至治具板,bios通过kcs链路将寄存器错误信息发送至bmc,bmc将接收到的寄存器错误信息通过rs-232串口发送至治具板。可选的,治具板的gpio引脚与协议分析仪的trigger连接器相连,s204可为发送置位gpio引脚的指令,以触发协议分析仪抓取nvme硬盘的pcietrace。由上可知,本发明实施例无需针对不同故障错误类型定制相应的bios或trigger,精确、有效的抓取出nvme硬盘故障错误对应的pcietrace。本发明实施例还针对抓取nvme硬盘trace的方法提供了相应的实现装置,进一步使得所述方法更具有实用性。下面对本发明实施例提供的抓取nvme硬盘trace的装置进行介绍,下文描述的抓取nvme硬盘trace的装置与上文描述的抓取nvme硬盘trace的方法可相互对应参照。参见图3,图3为本发明实施例提供的抓取nvme硬盘trace的装置在一种具体实施方式下的结构图,该装置可包括:信息获取模块301,用于获取寄存器错误信息,寄存器错误信息为bios在nvme硬盘所在pcie链路发生错误时采集的寄存器信息;寄存器错误信息为bios通过bmc发送至治具板;治具板协议分析仪相连。错误类型解析模块302,用于解析寄存器错误信息携带的地址信息得到对应的错误类型;寄存器错误信息的地址信息与错误类型具有对应关系。错误类型匹配结果判断模块303,判断错误类型是否和拨码开关当前对应的错误类型相一致。触发模块304,用于在错误类型和拨码开关当前对应的错误类型相一致时,触发协议分析仪抓取nvme硬盘的pcietrace。可选的,在本实施例的一些实施方式中,所述触发模块304例如还可以为在治具板的gpio引脚与协议分析仪的trigger连接器相连,发送置位gpio引脚的指令,以触发协议分析仪抓取nvme硬盘的pcietrace的模块。本发明实施例所述抓取nvme硬盘trace的装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。由上可知,本发明实施例无需针对不同故障错误类型定制相应的bios或trigger,精确、有效的抓取出nvme硬盘故障错误对应的pcietrace。本发明实施例还提供了一种抓取nvme硬盘trace的设备,具体可包括:存储器,用于存储计算机程序;处理器,用于执行计算机程序以实现如上任意一实施例所述抓取nvme硬盘trace的方法的步骤。本发明实施例所述抓取nvme硬盘trace的设备的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。由上可知,本发明实施例无需针对不同故障错误类型定制相应的bios或trigger,精确、有效的抓取出nvme硬盘故障错误对应的pcietrace。本发明实施例还提供了一种计算机可读存储介质,存储有抓取nvme硬盘trace的程序,所述抓取nvme硬盘trace的程序被处理器执行时如上任意一实施例所述抓取nvme硬盘trace的方法的步骤。本发明实施例所述计算机可读存储介质的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。由上可知,本发明实施例无需针对不同故障错误类型定制相应的bios或trigger,精确、有效的抓取出nvme硬盘故障错误对应的pcietrace。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或
技术领域
:内所公知的任意其它形式的存储介质中。以上对本发明所提供的一种抓取nvme硬盘trace的方法、装置、设备、系统及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本
技术领域
:的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1