CN113448905B - 一种设备热添加方法、系统、设备以及介质 - Google Patents
一种设备热添加方法、系统、设备以及介质 Download PDFInfo
- Publication number
- CN113448905B CN113448905B CN202110657628.9A CN202110657628A CN113448905B CN 113448905 B CN113448905 B CN 113448905B CN 202110657628 A CN202110657628 A CN 202110657628A CN 113448905 B CN113448905 B CN 113448905B
- Authority
- CN
- China
- Prior art keywords
- controller
- signal
- hot
- power
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000004044 response Effects 0.000 claims abstract description 52
- 238000004590 computer program Methods 0.000 claims description 9
- 230000004397 blinking Effects 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 description 10
- 230000006399 behavior Effects 0.000 description 9
- 230000008859 change Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000001934 delay Effects 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
- G06F13/4081—Live connection to bus, e.g. hot-plugging
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种设备热添加方法,包括以下步骤:响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电;延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器;响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号;响应于所述第一控制器接收到所述第二上电信号,控制所述设备复位;读取所述设备信息并加载驱动以实现所述设备的热添加本发明还公开了一种系统、计算机设备以及可读存储介质。本发明提出的方案是延迟一段时间后再将热插拔信号发送给系统的第二控制器,这样可将设备实际上电时间与系统发送上电时间错开处理,从而在保证系统正常工作的同时消除了系统下的报错。
Description
技术领域
本发明涉及热插拔领域,具体涉及一种设备热添加方法、系统、设备以及存储介质。
背景技术
随着云计算、AI、无人驾驶、边缘计算、协助加速计算等业务的逐渐成熟,服器中各种外插卡如智能网卡、FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)加速卡、GPU加速卡等PCIE(Peripheral Component Interconnect Express,高速串行计算机扩展总线标准)扩展设备应用越来越多。
由于应用业务场景的需要,服务器在运行中,对这些PCIE设备热维护的需求越来越普遍,这就需要在PCIE设备发生故障或需要对PCIE设备进行升级时,服务器不能关机停止运行,也即在服务器运行过程中对PCIE设备进行维修和升级。
PCIE设备热维护需要用到PCIE热插拔功能。所谓热插拔即带电拔插,允许用户在不关闭系统,不切断电源的情况下能够取出或更换主机下挂的PCIE设备,而不影响主机服务器系统的运行,从而提高系统对灾难的及时恢复能力、扩展性和灵活性等。
传统的PCIE热插拔功能需要按键及指示灯,用户通过按键操作告知系统需要对PCIE设备进行热插拔操作,系统通过指示灯告知用户PCIE设备的当前状态并同时给PCIE设备进行上电或下电操作,来完成PCIE设备的热维护。该种方式确实实现了PCIE设备的热插拔功能,但有时会在系统下产生报错,这会给客户带来不安或质疑。
PCIE规范规定热添加操作时,从系统对卡槽控制寄存器写入上电命令到数据链路层变化,这段时间的间隔要在1s内;而有些PCIE设备(如OCP NIC3.0)的规范却要求热添加时上电到复位的时间大于1s。如图1所示,由于只有在设备复位之后,数据链路层才会发生变化,因此设备上电到复位的时间发生在系统发上电指令到数据链路层变化的时间之内,这样就会导致对一些要求热添加时上电到复位的时间大于1s的PCIE设备做热添加操作时,系统会产生报错。
发明内容
有鉴于此,为了克服上述问题的至少一个方面,本发明实施例提出一种设备热添加方法,包括以下步骤:
响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电;
延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器;
响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号;
响应于所述第一控制器接收到所述第二上电信号,控制所述设备复位;
读取所述设备信息并加载驱动以实现所述设备的热添加。
在一些实施例中,还包括:
响应于所述第一控制器未接收到所述第二上电信号,控制所述设备下电。
在一些实施例中,响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号,进一步包括:
所述第二控制器修改相关的寄存器的值以产生中断。
在一些实施例中,还包括:
生成指示灯控制信号以控制指示灯闪烁。
在一些实施例中,响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电,进一步包括:
响应于热插拔按键触发,生成所述热插拔信号。
在一些实施例中,利用所述第一控制器将所述热插拔信号转发给第二控制器,进一步包括:
利用所述第一控制器将所述热插拔信号转发给IO扩展模块;
所述IO扩展模块将所述热插拔信号转化为预设格式的信号后将所述预设格式的信号转发给所述第二控制器。
在一些实施例中,所述第一控制器为可编程逻辑器件。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种设备热添加系统,包括:
生成模块,配置为响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电;
转发模块,配置为延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器;
第二控制器模块,配置为响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号;
复位模块,配置为响应于所述第一控制器接收到所述第二上电信号,控制所述设备复位;
加载模块,配置为读取所述设备信息并加载驱动以实现所述设备的热添加。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时执行如上所述的任一种设备热添加方法的步骤。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时执行如上所述的任一种设备热添加方法的步骤。
本发明具有以下有益技术效果之一:本发明提出的方案是通过第一控制器接收到热插拔信号后直接控制设备上电,并且延迟一段时间后再将热插拔信号发送给系统的第二控制器,这样可将设备实际上电时间与系统发送上电时间错开处理,并且通过系统产生的上电信号再进行PCIE设备的复位,又能保证设备上电的行为受控于系统,从而在保证系统正常工作的同时消除了系统下的报错。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为系统会产生报错的原因的示意图;
图2为本发明的实施例提供的设备热添加方法的流程示意图;
图3为本发明的实施例提供的设备热添加装置的结构示意图;
图4为本发明的实施例提供的设备热添加系统的结构示意图;
图5为本发明的实施例提供的计算机设备的结构示意图;
图6为本发明的实施例提供的计算机可读存储介质的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
根据本发明的一个方面,本发明的实施例提出一种设备热添加方法,如图1所示,其可以包括步骤:
S1,响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电;
S2,延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器;
S3,响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号;
S4,响应于所述第一控制器接收到所述第二上电信号,控制所述设备复位;
S5,读取所述设备信息并加载驱动以实现所述设备的热添加。
本发明提出的方案是通过第一控制器接收到热插拔信号后直接控制设备上电,并且延迟一段时间后再将热插拔信号发送给系统的第二控制器,这样可将设备实际上电时间与系统发送上电时间错开处理,并且通过系统产生的上电信号再进行PCIE设备的复位,又能保证设备上电的行为受控于系统,从而在保证系统正常工作的同时消除了系统下的报错。
在一些实施例中,步骤S1中,当第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电,具体的,如图3所示,当进行热添加操作时,首先确保PCIE卡槽中是空的,然后才进行插卡操作,接着用户即可按下热插拔按键,从而拉低电平,这样第一控制器(例如可编程逻辑器件,CPLD等)检测到电平变低,即可得知有PCIE设备进行热添加,然后直接生成上电使能信号PWREN1,以使能相应的供电单元(power IC)向插入PCIE Slot的PCIE设备供电,即使在当第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电。
在一些实施例中,步骤S2中,延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器,具体的,如图3所示,当第一控制器基于接收到的热插拔信号生成第一上电信号,使能PCIE设备上电后,经过内部延时后再将接收到的热插拔信号发送给系统的第二控制器(例如CPU等),这样可以将系统的热插拔流程向后延迟。因为在现有的热添加流程中,是通过系统的第二控制器接收热插拔信号,然后在经过一系列流程后,才会使能PCIE设备上电,由于PCIE规范规定热添加操作时,从系统对卡槽控制寄存器写入上电命令到数据链路层变化,这段时间的间隔要在1s内,这样就会导致一些要求热添加时上电到复位的时间大于1s的PCIE设备做热添加操作时,系统会产生报错。
这样,通过在本发明提供的方案中,将设备上电提前,将系统的热插拔流程延后,从而既能满足从系统对卡槽控制寄存器写入上电命令到数据链路层变化的时间间隔在1s内,也能满足要求热添加时上电到复位的时间大于1s的PCIE设备,从而消除了系统的报错。
在一些实施例中,还包括:
响应于所述第一控制器未接收到所述第二上电信号,控制所述设备下电。
在一些实施例中,响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号,进一步包括:
所述第二控制器修改相关的寄存器的值以产生中断。
在一些实施例中,还包括:
生成指示灯控制信号以控制指示灯闪烁。
具体的,当第一控制器内部延时后再将接收到的热插拔信号发送给系统的第二控制器,此时第二控制器收到的热插拔信号的时间相对于实际热插拔信号产生的时间有一定延后,但是其仍会根据接收到的热插拔信号进行修改寄存器、生成上电指令以及指示灯控制指令。也即修改热插拔相关寄存器的设置(例如,可以对寄存器GEP、VPP CTR、SlotStatus等寄存器进行设置),进而产生中断,控制指示灯闪烁和发送系统上电指令(第二上电指令)。当第二控制器生成并向第一控制器发送第二上电指令,第一控制器需要根据是否接收到第二上电指令决定是否对PCIE设备进行下电处理,若第一控制器检测不到第二控制器下发的第二上电指令则对设备进行下电处理,这样可以能保证设备上电的行为受控于系统。若第一控制器接收到第二控制器下发的第二上电指令则控制所述设备复位,这样,不仅可以满足从系统对卡槽控制寄存器写入上电命令到数据链路层变化的时间间隔在1s内,也能满足要求热添加时上电到复位的时间大于1s的PCIE设备,从而消除了系统的报错。
在一些实施例中,步骤S5,读取所述设备信息并加载驱动以实现所述设备的热添加,具体的,当第二控制器接收到第一控制器发送的第二上电指令后对PCIE设备进行复位,之后系统会读取PCIE设备信息并加载驱动,PCIE驱动加载成功,热添加完成。
在一些实施例中,响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电,进一步包括:
响应于热插拔按键触发,生成所述热插拔信号。
具体的,如图3所示,当进行热添加操作时,首先确保PCIE卡槽无卡,然后进行插卡操作,用户按下热插拔按键,即会通知第一控制器(CPLD)有PCIE设备插入。
在一些实施例中,利用所述第一控制器将所述热插拔信号转发给第二控制器,进一步包括:
利用所述第一控制器将所述热插拔信号转发给IO扩展模块;
所述IO扩展模块将所述热插拔信号转化为预设格式的信号后将所述预设格式的信号转发给所述第二控制器。
具体的,如图3所示,第一控制器和IO扩展模块(PCA9555芯片)之间可以通过一组VPP信号通信,当IO扩展模块接收到第一控制器CPLD发送的热插拔信号后,转换成VPP信号在传送给第二控制器。第二控制器输出的热插拔的相关信号可以经第一控制器透传或做其他处理。
本发明提出的方案是通过第一控制器接收到热插拔信号后直接控制设备上电,并且延迟一段时间后再将热插拔信号发送给系统的第二控制器,这样可将设备实际上电时间与系统发送上电时间错开处理,并且通过系统产生的上电信号再进行PCIE设备的复位,又能保证设备上电的行为受控于系统,从而在保证系统正常工作的同时消除了系统下的报错。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种设备热添加系统400,如图4所示,包括:
生成模块401,配置为响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电;
转发模块402,配置为延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器;
第二控制器模块403,配置为响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号;
复位模块404,配置为响应于所述第一控制器接收到所述第二上电信号,控制所述设备复位;
加载模块405,配置为读取所述设备信息并加载驱动以实现所述设备的热添加。
本发明提出的方案是通过第一控制器接收到热插拔信号后直接控制设备上电,并且延迟一段时间后再将热插拔信号发送给系统的第二控制器,这样可将设备实际上电时间与系统发送上电时间错开处理,并且通过系统产生的上电信号再进行PCIE设备的复位,又能保证设备上电的行为受控于系统,从而在保证系统正常工作的同时消除了系统下的报错。
在一些实施例中,当第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电,具体的,如图3所示,当进行热添加操作时,首先确保PCIE卡槽中是空的,然后才进行插卡操作,接着用户即可按下热插拔按键,从而拉低电平,这样第一控制器(例如可编程逻辑器件,CPLD等)检测到电平变低,即可得知有PCIE设备进行热添加,然后直接生成上电使能信号PWREN1,以使能相应的供电单元(power IC)向插入PCIE Slot的PCIE设备供电,即使在当第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电。
在一些实施例中,延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器,具体的,如图3所示,当第一控制器基于接收到的热插拔信号生成第一上电信号,使能PCIE设备上电后,经过内部延时后再将接收到的热插拔信号发送给系统的第二控制器(例如CPU等),这样可以将系统的热插拔流程向后延迟。因为在现有的热添加流程中,是通过系统的第二控制器接收热插拔信号,然后在经过一系列流程后,才会使能PCIE设备上电,由于PCIE规范规定热添加操作时,从系统对卡槽控制寄存器写入上电命令到数据链路层变化,这段时间的间隔要在1s内,这样就会导致一些要求热添加时上电到复位的时间大于1s的PCIE设备做热添加操作时,系统会产生报错。
这样,通过在本发明提供的方案中,将设备上电提前,将系统的热插拔流程延后,从而既能满足从系统对卡槽控制寄存器写入上电命令到数据链路层变化的时间间隔在1s内,也能满足要求热添加时上电到复位的时间大于1s的PCIE设备,从而消除了系统的报错。
在一些实施例中,还包括下电模块,配置为:
响应于所述第一控制器未接收到所述第二上电信号,控制所述设备下电。
在一些实施例中,响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号,进一步包括:
所述第二控制器修改相关的寄存器的值以产生中断。
在一些实施例中,还包括指示灯模块,配置为:
生成指示灯控制信号以控制指示灯闪烁。
具体的,当第一控制器内部延时后再将接收到的热插拔信号发送给系统的第二控制器,此时第二控制器收到的热插拔信号的时间相对于实际热插拔信号产生的时间有一定延后,但是其仍会根据接收到的热插拔信号进行修改寄存器、生成上电指令以及指示灯控制指令。也即修改热插拔相关寄存器的设置(例如,可以对寄存器GEP、VPP CTR、SlotStatus等寄存器进行设置),进而产生中断,控制指示灯闪烁和发送系统上电指令(第二上电指令)。当第二控制器生成并向第一控制器发送第二上电指令,第一控制器需要根据是否接收到第二上电指令决定是否对PCIE设备进行下电处理,若第一控制器检测不到第二控制器下发的第二上电指令则对设备进行下电处理,这样可以能保证设备上电的行为受控于系统。若第一控制器接收到第二控制器下发的第二上电指令则控制所述设备复位,这样,不仅可以满足从系统对卡槽控制寄存器写入上电命令到数据链路层变化的时间间隔在1s内,也能满足要求热添加时上电到复位的时间大于1s的PCIE设备,从而消除了系统的报错。
在一些实施例中,读取所述设备信息并加载驱动以实现所述设备的热添加,具体的,当第二控制器接收到第一控制器发送的第二上电指令后对PCIE设备进行复位,之后系统会读取PCIE设备信息并加载驱动,PCIE驱动加载成功,热添加完成。
在一些实施例中,生成模块还配置为:
响应于热插拔按键触发,生成所述热插拔信号。
具体的,如图3所示,当进行热添加操作时,首先确保PCIE卡槽无卡,然后进行插卡操作,用户按下热插拔按键,即会通知第一控制器(CPLD)有PCIE设备插入。
在一些实施例中,转发模块还配置为:
利用所述第一控制器将所述热插拔信号转发给IO扩展模块;
所述IO扩展模块将所述热插拔信号转化为预设格式的信号后将所述预设格式的信号转发给所述第二控制器。
具体的,如图3所示,第一控制器和IO扩展模块(PCA9555芯片)之间可以通过一组VPP信号通信,当IO扩展模块接收到第一控制器CPLD发送的热插拔信号后,转换成VPP信号在传送给第二控制器。第二控制器输出的热插拔的相关信号可以经第一控制器透传或做其他处理。
本发明提出的方案是通过第一控制器接收到热插拔信号后直接控制设备上电,并且延迟一段时间后再将热插拔信号发送给系统的第二控制器,这样可将设备实际上电时间与系统发送上电时间错开处理,并且通过系统产生的上电信号再进行PCIE设备的复位,又能保证设备上电的行为受控于系统,从而在保证系统正常工作的同时消除了系统下的报错。
基于同一发明构思,根据本发明的另一个方面,如图5所示,本发明的实施例还提供了一种计算机设备501,包括:
至少一个处理器520;以及
存储器510,存储器510存储有可在处理器上运行的计算机程序511,处理器520执行程序时执行以下步骤:
S1,响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电;
S2,延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器;
S3,响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号;
S4,响应于所述第一控制器接收到所述第二上电信号,控制所述设备复位;
S5,读取所述设备信息并加载驱动以实现所述设备的热添加。
在一些实施例中,还包括:
响应于所述第一控制器未接收到所述第二上电信号,控制所述设备下电。
在一些实施例中,响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号,进一步包括:
所述第二控制器修改相关的寄存器的值以产生中断。
在一些实施例中,还包括:
生成指示灯控制信号以控制指示灯闪烁。
在一些实施例中,响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电,进一步包括:
响应于热插拔按键触发,生成所述热插拔信号。
在一些实施例中,利用所述第一控制器将所述热插拔信号转发给第二控制器,进一步包括:
利用所述第一控制器将所述热插拔信号转发给IO扩展模块;
所述IO扩展模块将所述热插拔信号转化为预设格式的信号后将所述预设格式的信号转发给所述第二控制器。
在一些实施例中,所述第一控制器为可编程逻辑器件。
本发明提出的方案是通过第一控制器接收到热插拔信号后直接控制设备上电,并且延迟一段时间后再将热插拔信号发送给系统的第二控制器,这样可将设备实际上电时间与系统发送上电时间错开处理,并且通过系统产生的上电信号再进行PCIE设备的复位,又能保证设备上电的行为受控于系统,从而在保证系统正常工作的同时消除了系统下的报错。
基于同一发明构思,根据本发明的另一个方面,如图6所示,本发明的实施例还提供了一种计算机可读存储介质601,计算机可读存储介质601存储有计算机程序指令610,计算机程序指令610被处理器执行时执行以下步骤:
S1,响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电;
S2,延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器;
S3,响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号;
S4,响应于所述第一控制器接收到所述第二上电信号,控制所述设备复位;
S5,读取所述设备信息并加载驱动以实现所述设备的热添加。
在一些实施例中,还包括:
响应于所述第一控制器未接收到所述第二上电信号,控制所述设备下电。
在一些实施例中,响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号,进一步包括:
所述第二控制器修改相关的寄存器的值以产生中断。
在一些实施例中,还包括:
生成指示灯控制信号以控制指示灯闪烁。
在一些实施例中,响应于第一控制器接收到热插拔信号,生成第一上电信号以使能设备上电,进一步包括:
响应于热插拔按键触发,生成所述热插拔信号。
在一些实施例中,利用所述第一控制器将所述热插拔信号转发给第二控制器,进一步包括:
利用所述第一控制器将所述热插拔信号转发给IO扩展模块;
所述IO扩展模块将所述热插拔信号转化为预设格式的信号后将所述预设格式的信号转发给所述第二控制器。
在一些实施例中,所述第一控制器为可编程逻辑器件。
本发明提出的方案是通过第一控制器接收到热插拔信号后直接控制设备上电,并且延迟一段时间后再将热插拔信号发送给系统的第二控制器,这样可将设备实际上电时间与系统发送上电时间错开处理,并且通过系统产生的上电信号再进行PCIE设备的复位,又能保证设备上电的行为受控于系统,从而在保证系统正常工作的同时消除了系统下的报错。
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。
此外,应该明白的是,本文的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (7)
1.一种PCIE设备热添加方法,其特征在于,包括以下步骤:
响应于第一控制器接收到热插拔信号,生成第一上电信号以使能PCIE设备上电;
延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器;
响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号;
响应于所述第一控制器接收到所述第二上电信号,控制所述PCIE设备复位;
服务器的系统读取所述PCIE设备信息并加载驱动,响应于所述驱动加载成功,所述PCIE设备热添加完成;
响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号,进一步包括:
所述第二控制器修改相关的寄存器的值以产生中断;
利用所述第一控制器将所述热插拔信号转发给第二控制器,进一步包括:
利用所述第一控制器将所述热插拔信号转发给IO扩展模块;
所述IO扩展模块将所述热插拔信号转化为预设格式的信号后将所述预设格式的信号转发给所述第二控制器;
其中,所述第一控制器为可编程逻辑器件,所述第二控制器为CPU。
2.如权利要求1所述的方法,其特征在于,还包括:
响应于所述第一控制器未接收到所述第二上电信号,控制所述PCIE设备下电。
3.如权利要求1所述的方法,其特征在于,还包括:
生成指示灯控制信号以控制指示灯闪烁。
4.如权利要求1所述的方法,其特征在于,响应于第一控制器接收到热插拔信号,生成第一上电信号以使能PCIE设备上电,进一步包括:
响应于热插拔按键触发,生成所述热插拔信号。
5.一种PCIE设备热添加系统,其特征在于,包括:
生成模块,配置为响应于第一控制器接收到热插拔信号,生成第一上电信号以使能PCIE设备上电;
转发模块,配置为延迟预设时间段后,利用所述第一控制器将所述热插拔信号转发给第二控制器;
第二控制器模块,配置为响应于所述第二控制器接收到所述热插拔信号,生成并向所述第一控制器发送第二上电信号;
复位模块,配置为响应于所述第一控制器接收到所述第二上电信号,控制所述PCIE设备复位;
加载模块,配置为读取所述PCIE设备信息并加载驱动,并响应于所述驱动加载成功,所述PCIE设备热添加完成;
第二控制器模块还配置为:
所述第二控制器修改相关的寄存器的值以产生中断;
转发模块还配置为:
利用所述第一控制器将所述热插拔信号转发给IO扩展模块;
所述IO扩展模块将所述热插拔信号转化为预设格式的信号后将所述预设格式的信号转发给所述第二控制器;
其中,所述第一控制器为可编程逻辑器件,所述第二控制器为CPU。
6.一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时执行如权利要求1-4任意一项所述的方法的步骤。
7.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时执行如权利要求1-4任意一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110657628.9A CN113448905B (zh) | 2021-06-13 | 2021-06-13 | 一种设备热添加方法、系统、设备以及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110657628.9A CN113448905B (zh) | 2021-06-13 | 2021-06-13 | 一种设备热添加方法、系统、设备以及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113448905A CN113448905A (zh) | 2021-09-28 |
CN113448905B true CN113448905B (zh) | 2023-01-06 |
Family
ID=77811335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110657628.9A Active CN113448905B (zh) | 2021-06-13 | 2021-06-13 | 一种设备热添加方法、系统、设备以及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113448905B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391557A (zh) * | 2014-11-24 | 2015-03-04 | 浪潮电子信息产业股份有限公司 | 一种解决rack节点热插拔瞬间输入电压抖动的电路及方法 |
CN107077825A (zh) * | 2014-12-08 | 2017-08-18 | 英特尔公司 | 对热插拔检测信号进行过滤 |
TW201820787A (zh) * | 2016-11-29 | 2018-06-01 | 上銀科技股份有限公司 | 熱插拔電路 |
CN212781878U (zh) * | 2020-08-17 | 2021-03-23 | 深圳智锐通科技有限公司 | 支持热插拔的ops主机及ops设备 |
-
2021
- 2021-06-13 CN CN202110657628.9A patent/CN113448905B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391557A (zh) * | 2014-11-24 | 2015-03-04 | 浪潮电子信息产业股份有限公司 | 一种解决rack节点热插拔瞬间输入电压抖动的电路及方法 |
CN107077825A (zh) * | 2014-12-08 | 2017-08-18 | 英特尔公司 | 对热插拔检测信号进行过滤 |
TW201820787A (zh) * | 2016-11-29 | 2018-06-01 | 上銀科技股份有限公司 | 熱插拔電路 |
CN212781878U (zh) * | 2020-08-17 | 2021-03-23 | 深圳智锐通科技有限公司 | 支持热插拔的ops主机及ops设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113448905A (zh) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101420328B (zh) | 远程升级现场可编程门阵列的系统、接口卡及方法 | |
WO2021098485A1 (zh) | PCIe设备的上下电控制方法以及系统 | |
CN107085459B (zh) | 一种电源管理方法以及系统 | |
US20160306634A1 (en) | Electronic device | |
WO2024103829A1 (zh) | 一种端口配置方法、组件及硬盘扩展装置 | |
CN112667066B (zh) | 一种扩展硬盘存储容量的方法、系统及介质 | |
KR20070003954A (ko) | 집적 종단점 장치와, 집적 pci 익스프레스 종단점 장치및 pci 익스프레스 통신 시스템 | |
CN113127302A (zh) | 一种板卡gpio的监控方法和装置 | |
CN111052037B (zh) | 复位隔离桥 | |
CN115237234A (zh) | 一种支持不同型号智能网卡的方法、装置、设备及介质 | |
CN110399328B (zh) | 一种板载图形处理器控制方法与装置 | |
CN113448905B (zh) | 一种设备热添加方法、系统、设备以及介质 | |
CN101582036B (zh) | 共享式基本输入输出系统的伺服装置及方法 | |
CN113138650A (zh) | 一种cpld pci设备热复位电路、方法、系统及可读存储介质 | |
CN115047954B (zh) | 一种设备散热控制方法、系统、装置、设备及存储介质 | |
CN109117406B (zh) | 一种pcie热拔插测试方法、装置、终端及存储介质 | |
US8380911B2 (en) | Peripheral device, program and methods for responding to a warm reboot condition | |
CN114185720B (zh) | 服务器动态热备份的方法、装置、设备及存储介质 | |
CN115509985A (zh) | 一种处理器的i/o控制器 | |
TWI683254B (zh) | 伺服器節電系統及其節電方法 | |
KR102643030B1 (ko) | 시스템 온 칩 및 멀티 칩 전력 관리 시스템 | |
CN111240775A (zh) | 一种BIOS Setup界面控制方法、系统、终端及存储介质 | |
CN110647435A (zh) | 服务器、硬盘远程控制方法及控制组件 | |
US20250068553A1 (en) | Cpld as adapter for high-availability drive management | |
CN114860641A (zh) | 一种实现硬盘热拔插的方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |