一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

扩展卡的控制方法及装置、非易失性存储介质与流程

2022-02-20 21:32:43 来源:中国专利 TAG:


1.本技术涉及扩展卡热插拔技术领域,具体而言,涉及一种扩展卡的控制方法及装置、非易失性存储介质。


背景技术:

2.目前网关产品或者服务器产品,在高速串行计算机扩展总线标准(peripheral component interconnect express,pcie)接口扩展的情况下,并不支持pcie接口热插拔功能。但在使用的过程中,使用人员往往都不会关注该限制。使用人员如果在该接口热插拔扩展模块会造成模块烧毁,更有甚者会造成主机烧毁和数据丢失的风险。
3.为避免上述问题,现有方案主要有两种:方案一,手动关掉主机后再插拔扩展模块;方案二,手动通过软件控制来弹出扩展模块再做插拔。
4.方案一中先断电后再做模块的插拔行影响在线设备的数据传输,造成断网引用业务中断;方案二中,手动控制软件需要开发额外的软件开发,同时需要人力维护,成本较高。
5.针对目前支持pcie接口扩展的设备不支持pcie接口热插拔功能,导致在pcie接口插拔扩展模块时操作不便,以及成本较高的问题,目前尚未提出有效的解决方案。


技术实现要素:

6.本技术实施例提供了一种扩展卡的控制方法及装置、非易失性存储介质,以至少解决目前支持pcie接口扩展的设备不支持pcie接口热插拔功能,导致在pcie接口插拔扩展模块时操作不便,以及成本较高的技术问题。
7.根据本技术实施例的一个方面,提供了一种扩展卡的控制方法,包括:在确定设备的扩展卡接口中没有插入扩展卡的情况下,控制扩展卡接口断电;获取将扩展卡插入扩展卡接口的第一指令后,控制扩展卡插入扩展卡接口;在插入扩展卡接口的扩展卡正常上电的情况下,加载用于驱动扩展卡的驱动软件。
8.可选地,控制扩展卡接口断电,包括:将扩展卡接口对扩展卡的控制权从中央处理器转移至基板管理控制器;通过基板管理控制器扩展卡接口断电;扩展卡接口断电后,将扩展卡接口对扩展卡的控制权从基板管理控制器转移至中央处理器。
9.可选地,控制扩展卡插入扩展卡接口,包括:控制扩展卡和扩展卡接口建立连接。
10.可选地,加载用于驱动扩展卡的驱动软件之前,上述方法还包括:将扩展卡接口对扩展卡的控制权从中央处理器转移至基板管理控制器;通过基板管理控制器控制扩展卡复位上电。
11.可选地,加载用于驱动扩展卡的驱动软件之后,上述方法还包括:将扩展卡接口对扩展卡的控制权从基板管理控制器转移至中央处理器。
12.可选地,获取将扩展卡插入扩展卡接口的第一指令,包括通过以下方式中的一种:获取通过软件界面下发的第一指令;获取通过点击设备上的硬件按钮下发的第一指令。
13.根据本技术实施例的另一方面,还提供了一种扩展卡的控制方法,包括:获取将扩
展卡从设备的扩展卡接口拔出的第二指令后,卸载用于驱动扩展卡的驱动软件;控制扩展卡断电;确定扩展卡断电后,控制扩展卡从扩展卡接口中拔出。
14.可选地,控制扩展卡断电,包括:将扩展卡接口对扩展卡的控制权从中央处理器转移至基板管理控制器;通过基板管理控制器扩展卡断电。
15.可选地,控制扩展卡从扩展卡接口中拔出,包括:控制扩展卡和扩展卡接口断开连接。
16.可选地,控制扩展卡从扩展卡接口中拔出之后,上述方法还包括:将扩展卡接口对扩展卡的控制权从基板管理控制器转移至中央处理器。
17.可选地,获取将扩展卡从设备的扩展卡接口拔出的第二指令,包括通过以下方式中的一种:获取通过软件界面下发的第二指令;获取通过点击设备上的硬件按钮下发的第二指令。
18.根据本技术实施例的另一方面,还提供了一种扩展卡的控制装置,包括:第一控制模块,用于在确定设备的扩展卡接口中没有插入扩展卡的情况下,控制扩展卡接口断电;第二控制模块,用于获取将扩展卡插入扩展卡接口的第一指令后,控制扩展卡插入扩展卡接口;加载模块,用于在插入扩展卡接口的扩展卡正常上电的情况下,加载用于驱动扩展卡的驱动软件。
19.根据本技术实施例的再一方面,还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行以上的扩展卡的控制方法。
20.根据本技术实施例的再一方面,还提供了一种处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行以上的扩展卡的控制方法。
21.在本技术实施例中,采用在确定设备的扩展卡接口中没有插入扩展卡的情况下,控制扩展卡接口断电;获取将扩展卡插入扩展卡接口的第一指令后,控制扩展卡插入扩展卡接口;在插入扩展卡接口的扩展卡正常上电的情况下,加载用于驱动扩展卡的驱动软件的方式,达到了使相关设备的pcie接口支持pcie接口热插拔功能的目的,从而实现了减少在pcie接口插拔扩展模块时的人力维护成本,以及增强了pcie接口的维护便利性的技术效果,进而解决了目前支持pcie接口扩展的设备不支持pcie接口热插拔功能,导致在pcie接口插拔扩展模块时操作不便,以及成本较高技术问题。
附图说明
22.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
23.图1是根据本技术实施例的一种扩展卡的控制方法的流程图;
24.图2是根据本技术实施例的另一种扩展卡的控制方法的流程图;
25.图3是根据本技术实施例的一种扩展卡的控制装置的结构框图。
具体实施方式
26.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是
本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
27.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
28.根据本技术实施例,提供了一种扩展卡的控制方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
29.图1是根据本技术实施例的一种扩展卡的控制方法的流程图,如图1所示,该方法包括如下步骤:
30.步骤s102,在确定设备的扩展卡接口中没有插入扩展卡的情况下,控制扩展卡接口断电;
31.需要说明的,上述扩展卡接口为pcie接口,扩展卡下文中统一称为pcie网卡。
32.步骤s104,获取将扩展卡插入扩展卡接口的第一指令后,控制扩展卡插入扩展卡接口;
33.步骤s106,在插入扩展卡接口的扩展卡正常上电的情况下,加载用于驱动扩展卡的驱动软件。
34.通过上述步骤,达到了使相关设备的pcie接口支持pcie接口热插拔功能的目的,从而实现了减少在pcie接口插拔扩展卡时的人力维护成本,以及增强了pcie接口的维护便利性的技术效果。
35.根据本技术的一个可选的实施例,执行步骤s102控制扩展卡接口断电,包括以下步骤:将扩展卡接口对扩展卡的控制权从中央处理器转移至基板管理控制器;通过基板管理控制器扩展卡接口断电;扩展卡接口断电后,将扩展卡接口对扩展卡的控制权从基板管理控制器转移至中央处理器。
36.需要说明的是,设备开机时每个槽位(即上文中的扩展卡接口)默认为上电,利用软件扫描每个槽位是否已经插入pcie网卡,如果没有插入,则发出指令,把该槽位的pcie控制权转给到基板管理控制器(baseboard management controller,bmc),通过软件给bmc下发指令,bmc控制该槽位断电,实现没有插入pcie网卡的槽位默认不带电,断电后将pcie控制权交回给中央处理器(central processing unit,cpu)。
37.表1是本技术实施例提供的主板pcie扩展槽/线卡信号的详细信息,如下文中表1所示:
38.表1主板pcie扩展槽/线卡信号
[0039][0040][0041]
线卡的电源使能、复位、在位检测、gpio按键全部用pca9555(i2c转16路gpio)扩展,pca9555在上电后,默认状态,各个io均为内部100k上拉输入状态。pca9555使用p3v3_slot电源域(也就是说cpu如果是关机状态,pca9555是无法访问的)。
[0042]
表2是线卡电源使能控制真值表,如表2所示:
[0043]
prsnt_npca9555_pwr_enp12_en/p3v3_enp3v3sb_en0(在位)0(bmc控制关)000(在位)1(bmc控制变开)后1先11(不在)0(bmc控制关)001(不在)1(bmc控制开)000插着卡开机1(bmc未初始化)后1(无延时)先1(无延时)1->0(热插入)1(bmc未初始化)后1(有延时)先1(有延时)
[0044]
处理的关键在于如果线卡处于插着的状态开机,线卡上电应无延时。如果线卡是热插入,线卡上电应有延时保护。
[0045]
插着状态开机如果存在延时,太长可能会导致bios无法正确识别设备。
[0046]
热插入延时如果太短,容易导致金手指在接触不良时产生较大的热效应。
[0047]
bmc启动完成前,线卡供电可以通过prsnt_n控制,prsnt_n有较高的优先级。
[0048]
总的设计思路是prsnt_n信号位0,bmc控制的pca9555_pwr_en信号为1时,要控制线卡各个电源上电,并且p3v3sb需要先上电。其他状态,线卡都是断电的。延时电路在prsnt_n从1->0的时候需生效,但在prsnt_n一直保持为0的时候,不需要延时。power switch可以选择带软启动和过流保护的芯片,一般情况下,线卡p12v_card使用2-3a的power switch,p3v3_card使用2-3a的power switch,p3v3sb_card使用1a的power switch。bypass_en/gate_slot信号需用使用三态缓冲器做隔离,缓冲器供电为p3v3by_slot,这样确保主机掉电时,bypass信号仍然可以维持一段实际。线卡拔除后,这些信号为高阻状态,线卡插入时,p3v3_12v_card_en信号控制使能。如果不使用缓冲器设计,bypass信号必须要
有限流电阻。
[0049]
根据本技术的另一个可选的实施例,执行步骤s104控制扩展卡插入扩展卡接口,包括:控制扩展卡和扩展卡接口建立连接。
[0050]
在本步骤中,将扩展卡插入扩展卡接口,实质上就是建立扩展卡和扩展卡接口之间的连接关系。
[0051]
在本技术的一些可选的实施例中,执行步骤s106加载用于驱动扩展卡的驱动软件之前,还需要将扩展卡接口对扩展卡的控制权从中央处理器转移至基板管理控制器;通过基板管理控制器控制扩展卡复位上电。
[0052]
可选地,加载用于驱动扩展卡的驱动软件之后,将扩展卡接口对扩展卡的控制权从基板管理控制器转移至中央处理器。
[0053]
收到将扩展卡插入槽位的指令后,将该槽位的pcie控制权给到bmc,下发指令给bmc控制gpio给pcie卡上电复位,系统扫描到pcie卡,系统加载驱动,确认pcie网卡正常上电,网口指示灯正常,则确认pcie网卡插入正常。此时,将pcie控制权交回给cpu。
[0054]
在本技术的另一些可选的实施例中,执行步骤s102获取将扩展卡插入扩展卡接口的第一指令,包括通过以下方式中的一种:获取通过软件界面下发的第一指令;获取通过点击设备上的硬件按钮下发的第一指令。
[0055]
在本技术提供的实施例中,pcie网卡有两种,一种是不带btn按钮的pcie网卡,另一种是带btn按钮的pcie网卡。
[0056]
在将这两种扩展卡通过pcie接口插入相关设备时的区别在于,插入不带btn按钮的pcie网卡时,通过软件界面下发插入pcie网卡的指令;插入带btn按钮的pcie网卡时,通过点击btn按钮下发插入pcie网卡的指令,具体的,按下btn按钮,通过btn控制gpio,os扫描到btn控制的gpio变化,把该槽位的pcie控制权给到bmc,下发指令通知bmc让pcie卡上电复位。插入pcie网卡的其他步骤,二者一致。
[0057]
在一个可选的实施例中,按键(btn按钮)连接到pca9555上,软件可以根据按键拉低足够长的时间(例如3秒时间)触发拔除线卡的操作流程。软件可以使用pca9555的int信号触发这个按键状态查询。线卡如果没有指示灯反应线卡的电源已经下电状态,需要额外设计一个电源指示灯,用户可根据此指示灯判别线卡是否可安全拔插。
[0058]
图2是根据本技术实施例的另一种扩展卡的控制方法的流程图,如图2所示,该方法包括以下步骤:
[0059]
步骤s202,获取将扩展卡从设备的扩展卡接口拔出的第二指令后,卸载用于驱动扩展卡的驱动软件;
[0060]
在本步骤中,在收到拔出pcie网卡的指令的情况下,卸载驱动pcie网卡的驱动软件。
[0061]
步骤s204,控制扩展卡断电;
[0062]
步骤s206,确定扩展卡断电后,控制扩展卡从扩展卡接口中拔出。
[0063]
根据本技术的一个可选的实施例,执行步骤s204控制扩展卡断电,包括以下步骤:将扩展卡接口对扩展卡的控制权从中央处理器转移至基板管理控制器;通过基板管理控制器扩展卡断电。
[0064]
在本步骤中,将拔出pcie网卡的槽位的pcie控制权给到bmc,下发指令给bmc控制
gpio让pcie网卡断电。
[0065]
根据本技术的一个可选的实施例,执行步骤s206控制扩展卡从扩展卡接口中拔出,包括:控制扩展卡和扩展卡接口断开连接。
[0066]
在上文中提到,将扩展卡插入扩展卡接口,实质上就是建立扩展卡和扩展卡接口之间的连接关系。相应地,将扩展卡从扩展卡接口中拔出,实质上就是断开扩展卡和扩展卡接口之间的连接关系。
[0067]
在本技术的一些可选的实施例中,执行步骤s206控制扩展卡从扩展卡接口中拔出之后,还需要将扩展卡接口对扩展卡的控制权从基板管理控制器转移至中央处理器。
[0068]
在本步骤中,pcie网卡的网口指示灯熄灭,确认pcie卡不带电,拔出网卡,将该pcie接口对pcie网卡的控制权交回给cpu。
[0069]
在本技术的另一些可选的实施例中,获取将扩展卡从设备的扩展卡接口拔出的第二指令,包括通过以下方式中的一种:获取通过软件界面下发的第二指令;获取通过点击设备上的硬件按钮下发的第二指令。
[0070]
在本技术提供的实施例中,pcie网卡有两种,一种是不带btn按钮的pcie网卡,另一种是带btn按钮的pcie网卡。
[0071]
在将这两种扩展卡从pcie接口拔出时的区别在于,拔出不带btn按钮的pcie网卡时,通过软件界面下发拔出pcie网卡的指令;拔出带btn按钮的pcie网卡时,通过点击btn按钮下发拔出pcie网卡的指令,具体的,按下btn按钮,通过btn控制gpio,os扫描到btn控制的gpio变化,卸载网卡驱动后,把该槽位的pcie控制权给到bmc,下发指令通知bmc让pcie卡断电。拔出pcie网卡的其他步骤,二者一致。
[0072]
图3是根据本技术实施例的一种扩展卡的控制装置的结构框图,如图3所示,该装置包括:
[0073]
第一控制模块30,用于在确定设备的扩展卡接口中没有插入扩展卡的情况下,控制扩展卡接口断电;
[0074]
第二控制模块32,用于获取将扩展卡插入扩展卡接口的第一指令后,控制扩展卡插入扩展卡接口;
[0075]
加载模块34,用于在插入扩展卡接口的扩展卡正常上电的情况下,加载用于驱动扩展卡的驱动软件。
[0076]
需要说明的是,图3所示实施例的优选实施方式可以参见图1所示实施例的相关描述,此处不再赘述。
[0077]
本技术实施例还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行以上的扩展卡的控制方法。
[0078]
上述非易失性存储介质用于存储执行以下功能的程序:在确定设备的扩展卡接口中没有插入扩展卡的情况下,控制扩展卡接口断电;获取将扩展卡插入扩展卡接口的第一指令后,控制扩展卡插入扩展卡接口;在插入扩展卡接口的扩展卡正常上电的情况下,加载用于驱动扩展卡的驱动软件。或者
[0079]
获取将扩展卡从设备的扩展卡接口拔出的第二指令后,卸载用于驱动扩展卡的驱动软件;控制扩展卡断电;确定扩展卡断电后,控制扩展卡从扩展卡接口中拔出。
[0080]
本技术实施例还提供了一种处理器,处理器用于运行存储在存储器中的程序,其
中,程序运行时执行以上的扩展卡的控制方法。
[0081]
上述处理器用于运行执行以下功能的程序:在确定设备的扩展卡接口中没有插入扩展卡的情况下,控制扩展卡接口断电;获取将扩展卡插入扩展卡接口的第一指令后,控制扩展卡插入扩展卡接口;在插入扩展卡接口的扩展卡正常上电的情况下,加载用于驱动扩展卡的驱动软件。或者
[0082]
获取将扩展卡从设备的扩展卡接口拔出的第二指令后,卸载用于驱动扩展卡的驱动软件;控制扩展卡断电;确定扩展卡断电后,控制扩展卡从扩展卡接口中拔出。
[0083]
上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
[0084]
在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0085]
在本技术所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0086]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0087]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0088]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0089]
以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献