一种测试PCIE卡热插拔功能的测试方法与流程

文档序号:14474123阅读:1774来源:国知局
一种测试PCIE卡热插拔功能的测试方法与流程

本发明涉及计算机领域,特别涉及一种测试pcie卡热插拔功能的方法。



背景技术:

pci-express(peripheralcomponentinterconnectexpress)是一种高速串行计算机扩展总线标准,它原来的名称为“3gio”,是由英特尔在2001年提出的,旨在替代旧的pci,pci-x和agp总线标准。pcie属于高速串行点对点双通道高带宽传输,所连接的设备分配独享通道带宽,不共享总线带宽,主要支持主动电源管理,错误报告,端对端的可靠性传输,热插拔以及服务质量(qos)等功能。pcie交由pci-sig(pci特殊兴趣组织)认证发布后才改名为“pci-express”,简称“pci-e”。它的主要优势就是数据传输速率高,目前最高的16x2.0版本可达到10gb/s,而且还有相当大的发展潜力。

在服务器结构体系中,pcie是标准的外部设备接口,通过pcie接口可以扩展出网卡,显卡,存储卡多种标准pcie设备。pciexpress支持热插拔及热交换的特性,也就是说,你可以在不必关闭系统和电源的情况下更换pciexpress槽的版卡和各种硬件设备。

而热插拔测试技术主要依托于热插拔测试方案进行,支持热插拔的模块,对测试来说反复的插拔是测试的痛点,如何进行快速、有效的测试方案,对产品的缩短上市时间,保证产品质量起着至关重要的作用。



技术实现要素:

本发明是通过如下技术方案实现的,一种pcie卡热插拔功能的测试方法,利用主板中的bmc模块给系统下发命令,通过软件模拟热插拔测试流程,来测试热插拔功能。

优选的,该方法中还收集各个插拔动作plx芯片中寄存器状态。

本发明还提供一种pcie卡热插拔功能的测试方法,包括如下步骤,1)首先根据pcie卡槽位对应的pcieswitch芯片所在bdf,查看对应槽位热插拔相关寄存器的状态;2)根据bmc提供cmd接口实现热插拔流程中单步工作。

进一步的,步骤2)进一步包括插入流程和拔出流程。

进一步的,步骤2)中的插入流程包括插入按钮、bmc的控制释放。

进一步的,步骤2)中的拔出流程包括删除按钮、删除mrl和prsnt、bmc的控制释放。

本发明提供一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行以实现所述的方法。

本发明还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序以实现所述的方法。

本发明相对于现有技术的有益效果是,通过软件模拟来测试热插拔流程,减少物理插拔给连接器带来的伤害。通过该测试方案可以收集热插拔寄存器相关寄存器,利用脚本进行热插拔测试,可以在任何时间完成测试,不需要物理插拔,提高测试效率。

附图说明

图1本发明一实施例提供的由bmc提供相关命令示意图

图2本发明一实施例提供的测试pcie卡热插拔功能的流程示意图

具体实施方式

下面结合附图对本发明的较佳实施例进行详细阐述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。

本发明实施例中,如图1所示,由bmc提供相关命令pciehot-plug控制接口命令如下:

1.给pcie插槽上电、下电的命令;2、设置、清除mrl的命令;3、软件模拟热插入和热拔出的命令;4、软件可以模拟按钮被按下操作;5、软件可以设置和清除io卡的在位信号。

如图2所示,本发明一实施例中流程如下:

1).首先根据pcie卡槽位对应的pcieswitch芯片所在bdf,可以查看对应槽位热插拔相关寄存器的状态。主要实现为以下代码:

例如,测试脚本读取1槽位slotstatusregistercommandcompletedbit20寄存器值(测试结果为0,表示状态更新完成)

2)根据bmc提供cmd接口实现热插拔流程中单步工作。

插入流程由两个顺序完成:

1.insertionbutton:

./ipmitool-h127.0.0.1-uadmin-padminraw0x300x340x000xf4

2.releasebmccontrol:

./ipmitool-h127.0.0.1-uadmin-padminraw0x300x340x000x00

拔出流程由三个命令完成

remove:

1.removebutton:

./ipmitool-h127.0.0.1-uadmin-padminraw0x300x340x000xf8

waitfordatalinkdown.

2.removemrl&&prsnt:

./ipmitool-h127.0.0.1-uadmin-padminraw0x300x340x000xc8

3.releasebmccontrol:

./ipmitool-h127.0.0.1-uadmin-padminraw0x300x340x000x00

3)结合以上两个部分,完成整个插拔流程测试,以及各热插拔相关寄存器状态查询主要脚本实现如下:

本发明一实施例中,对1槽位卡进行remove如下:

./hot_plug.sh_r1|

[1053.443316]pciehp0000:82:09.0:pcie24:buttonpressedonslot(41)

[1053.449511]pciehp0000:82:09.0:pcie24:pcislot#41-poweringoffduetobuttonpress

[1058.677929]pciehp0000:82:09.0:pcie24:slot(41):linkdownevent

[1058.684035]pciehp0000:82:09.0:pcie24:linkdowneventignoredonslot(41):alreadypoweringoff

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序或者程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质中。

本发明还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序以实现所述的步骤。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1