CN115269474A - 一种服务器及其PCIe热插拔的控制方法、装置及介质 - Google Patents

一种服务器及其PCIe热插拔的控制方法、装置及介质 Download PDF

Info

Publication number
CN115269474A
CN115269474A CN202110474323.4A CN202110474323A CN115269474A CN 115269474 A CN115269474 A CN 115269474A CN 202110474323 A CN202110474323 A CN 202110474323A CN 115269474 A CN115269474 A CN 115269474A
Authority
CN
China
Prior art keywords
node board
board card
switch chip
pcie
control module
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.)
Pending
Application number
CN202110474323.4A
Other languages
English (en)
Inventor
刘猛
钟鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jinan Yushi Intelligent Technology Co ltd
Original Assignee
Jinan Yushi Intelligent Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jinan Yushi Intelligent Technology Co ltd filed Critical Jinan Yushi Intelligent Technology Co ltd
Priority to CN202110474323.4A priority Critical patent/CN115269474A/zh
Publication of CN115269474A publication Critical patent/CN115269474A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4081Live connection to bus, e.g. hot-plugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

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)

Abstract

本申请公开了一种服务器及其PCIe热插拔的控制方法、装置及介质,其中,服务器包括PCIe Switch芯片、逻辑控制模块和节点板卡。由于PCIe Switch芯片用于执行所述节点板卡的热插拔流程,所以热插拔流程不需要依赖操作系统内核设计和执行,避免了操作系统内核升级带来的影响。另外,由于PCIeSwitch芯片通过逻辑控制模块与节点板卡连接,所以其不是直接接收节点板卡的在位信号,而是由逻辑控制模块在判断出电源所提供的功率满足节点板卡上电的情况下才转发在位信号,故PCIe Switch芯片在执行热插拔流程之前,排除了由于功率不足而导致节点板卡接入后供电不稳定的问题,提高了服务器的可靠性。

Description

一种服务器及其PCIe热插拔的控制方法、装置及介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种服务器及其PCIe热插拔的控制方法、装置及介质。
背景技术
高速串行计算机扩展总线标准(peripheral component interconnect express,PCIe)是一种常用的通信方式,故被广泛应用于计算机技术领域,例如,多节点服务器级联的场景中。在多节点服务器级联中,可以有效的提高板卡节点之间的通信带宽,同时还方便进行扩展。
对于中央处理器(CPU)来说,其通过PCIe总线实现与节点板卡(相当于PCIe设备)的通信,与其它通信方式不同的是,节点板卡不能直接插/拔,否则会引起CPU异常。故常用的方式是基于操作系统内核进行PCIe热插拔流程设计,且由操作系统内核执行PCIe热插拔流程,实现CPU控制PCIe链路的连接或者断开。
由于所设计的PCIe热插拔流程是与操作系统内核相适应的,所以当操作系统内核升级时,需要重新设计PCIe热插拔流程,故对于操作系统内核的依赖度过高。
由此可见,在实现对PCIe设备的热插拔处理时如何降低对操作系统内核的依赖是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种PCIe热插拔的控制方法,该方法不需要依赖操作系统内核所设计,所以降低了对操作系统内核的依赖。此外,本申请的目的还提供一种上述方法对应的PCIe热插拔的控制装置、介质及服务器。
为解决上述技术问题,本申请提供一种PCIe热插拔的控制方法,应用于包含有PCIe Switch芯片的服务器中,PCIe Switch芯片通过逻辑控制模块与节点板卡连接,用于执行所述节点板卡的热插拔流程,所述方法由所述逻辑控制模块实现,包括如下步骤:
获取用于表征所述节点板卡插入的在位信号;
判断电源所提供的功率是否满足所述节点板卡上电;
如果是,则将所述在位信号发送至所述PCIe Switch芯片以便触发所述PCIeSwitch芯片执行所述热插拔流程中的插入流程将所述节点板卡接入。
优选地,在所述PCIe Switch芯片执行完所述插入流程后,还包括:
判断所述节点板卡是否过流;
如果所述节点板卡过流,则向所述PCIe Switch芯片发送拔出信号以便触发所述PCIe Switch芯片执行所述热插拔流程中的拔出流程将所述节点板卡拔出。
优选地,所述逻辑控制模块与所述PCIe Switch芯片集成于所述服务器的交换板,所述逻辑控制模块和所述节点板卡通过背板连接,所述逻辑控制模块和所述节点板卡所传输的信号为低电平有效。
优选地,所述PCIe Switch芯片执行所述热插拔流程中的插入流程将所述节点板卡接入包括:
通过所述逻辑控制模块向所述节点板卡发出电源使能信号和时钟使能信号以通知所述节点板卡上电;
通过所述逻辑控制模块接收所述节点板卡发送的上电信号;
通过所述逻辑控制模块向所述节点板卡发送复位信号以使CPU扫描到所述节点板卡。
优选地,所述PCIe Switch芯片执行所述热插拔流程中的拔出流程将所述节点板卡拔出包括:
在接收到所述逻辑控制模块发送的所述拔出信号后,触发CPU断开与所述拔出信号对应的PCIe链路;
通过所述逻辑控制模块向所述节点板卡发送复位信号、电源使能信号和时钟使能信号以通知所述节点板卡下电;
通过所述逻辑控制模块接收所述节点板卡发送的下电信号。
优选地,所述通过所述逻辑控制模块接收所述节点板卡发送的上电信号,包括:
判断是否接收到所述逻辑控制模块发送的所述上电信号;
如果未收到,则判断等待时长是否超时;其中,所述等待时长为当前时刻与发出所述电源使能信号和所述时钟使能信号的时刻的差值;
如果超时,则结束所述热插拔流程;
如果未超时,则返回所述判断是否接收到所述逻辑控制模块发送的所述上电信号的步骤;
如果接收到,则进入所述通过所述逻辑控制模块向所述节点板卡发送复位信号以使CPU扫描到所述节点板卡的步骤。
为解决上述技术问题,本申请提供一种PCIe热插拔的控制装置,应用于包含有PCIe Switch芯片的服务器中,PCIe Switch芯片通过逻辑控制模块与节点板卡连接,用于执行所述节点板卡的热插拔流程所述装置包括:
获取模块,用于获取用于表征所述节点板卡插入的所述在位信号;
判断模块,用于判断电源所提供的功率是否满足所述节点板卡上电;
触发模块,用于在是判断模块的判断结果为是时,将所述在位信号发送至所述PCIe Switch芯片以便触发所述PCIe Switch芯片执行所述热插拔流程中的插入流程将所述节点板卡接入。
为解决上述技术问题,本申请提供一种PCIe热插拔的控制装置,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如所述的PCIe热插拔的控制方法的步骤。
为解决上述技术问题,本申请提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述的PCIe热插拔的控制方法的步骤。
为解决上述技术问题,本申请提供一种服务器,包括PCIe Switch芯片、逻辑控制模块和节点板卡,所述PCIe Switch芯片通过所述逻辑控制模块与所述节点板卡连接;
所述逻辑控制模块,用于在接收到所述节点板卡的在位信号后,判断电源所提供的功率是否满足所述节点板卡上电,如果满足,则将所述在位信号发送至所述PCIe Switch芯片;
所述PCIe Switch芯片,用于在接收到所述在位信号后,执行热插拔流程中的插入流程将所述节点板卡接入。
本申请所提供的一种PCIe热插拔的控制方法,应用于包含有PCIe Switch芯片的服务器中,由于PCIe Switch芯片用于执行所述节点板卡的热插拔流程,所以热插拔流程不需要依赖操作系统内核设计和执行,避免了操作系统内核升级带来的影响。另外,由于PCIeSwitch芯片通过逻辑控制模块与节点板卡连接,所以对于PCIe Switch芯片来说,其不是直接接收节点板卡的在位信号,而是由逻辑控制模块转发,而逻辑控制模块转发在位信号之前,先判断电源所提供的功率是否满足节点板卡上电,在满足的情况下,才将在位信号发送PCIe Switch芯片,故PCIe Switch芯片在执行热插拔流程之前,排除了由于功率不足而导致节点板卡接入后供电不稳定的问题,提高了服务器的可靠性。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种服务器中PCIe通信的结构图;
图2为本申请实施例提供的一种PCIe热插拔的控制方法的流程图;
图3为本申请实施例提供的一种PCIe热插拔的控制装置的结构图;
图4为本申请实施例提供的另一种PCIe热插拔的控制装置的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的核心是提供一种服务器及其PCIe热插拔的控制方法、装置及介质,该控制方法中基于逻辑控制模块实现,由逻辑控制模块判断出当前电源所提供的功率满足节点板卡上电时,才将节点板卡的在位信号转发给PCIe Switch芯片,进而由PCIe Switch芯片执行热插拔流程。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
图1为本申请实施例提供的一种服务器中PCIe通信的结构图。如图1所示,其为PCIe热插拔的控制方法所应用的硬件环境。可以理解的是,图1所示的结构仅仅是为了说明服务器中PCIe通信的原理,并不代表全部的组成。
在具体实施中,CPU1的作用之一是将外部网络数据进行处理和转发,各节点板卡2之间的通信通过PCIe Switch芯片3进行数据传输。PCIe Switch芯片3的一端与CPU1连接,另一端通过逻辑控制模块4与节点板卡2连接。
在一种具体实施中,逻辑控制模块4的具体类型不做限定,任何能够实现逻辑控制的器件,且能够与PCIe Switch芯片3和节点板卡2物理连接即可,例如,可由MCU实现。另外,在具体实施中,PCIe Switch芯片3通常需要与I/O Expander芯片5配合使用,即PCIeSwitch芯片3通常是通过I/OExpander芯片5与逻辑控制模块4连接。
PCIe Switch芯片3预先写有PCIe热插拔流程对应的程序,用于执行PCIe热插拔流程,使得各节点板卡可以独立插拔,不影响其余节点板卡的PCIe链路的正常工作。由于采用PCIe Switch芯片3执行PCIe热插拔流程,所以在PCIe热插拔流程设计中不再依赖系统操作内核,避免了由于系统操作内核升级所带来的不匹配。由于PCIe Switch芯片3在接收到节点板卡2的在位信号后,就会立即执行PCIe热插拔流程,所以为了避免节点板卡供电不足的问题,在位信号先经过逻辑控制模块4,由逻辑控制模块4进行转发,而逻辑控制模块4转发之前会进行逻辑判断,即判断电源所提供的功率是否满足节点板卡上电,如果满足,则将在位信号发送至PCIe Switch芯片以便触发PCIe Switch芯片执行热插拔流程中的插入流程将节点板卡接入。
图2为本申请实施例提供的一种PCIe热插拔的控制方法的流程图。如图2所示,该方法由逻辑控制模块实现,包括如下步骤:
S10:获取用于表征节点板卡插入的在位信号。
逻辑控制模块与节点板卡连接,当节点板卡插入时,逻辑控制模块会接收到在位信号,图1中的PRN。由于逻辑控制模块与节点板卡之间的连接是按照一定协议规则,所以在接收到在位信号后,能够确定节点板卡的身份信息,例如该节点板卡的额定功率、型号等。
S11:判断电源所提供的功率是否满足节点板卡上电,如果是,则进入S12,如果否,则进入S13。
标准的PCIe热插拔流程,是在接收到在位信号后,立即执行插入流程,此时若电源所提供的功率无法支撑该节点板卡用电要求,会导致该节点板卡供电不稳定,甚至其它节点板卡供电也不稳定,严重会导致节点板卡损坏。
考虑到上述问题,本步骤中,由逻辑控制模块在获取到在位信号后,并不是立即将在位信号发送给PCIe Switch芯片,而是先判断该节点板卡是否满足上电要求,即电源所提供的功率是否满足节点板卡上电,如果满足,才将在位信号发送至PCIe Switch芯片,如果不满足,则不发送。可以理解的是,由于PCIe Switch芯片与节点板卡不是直接连接,所以在逻辑控制模块不发送在位信号的情况下,PCIe Switch芯片无法接收到该在位信号,也就不会执行PCIe热插拔流程中的插入流程,那么对应的节点板卡也不会接入到服务器中,进而不会造成节点板卡供电不稳定的问题。
在一种具体实施例中,判断电源所提供的功率是否满足节点板卡上电包括:
获取节点板卡的身份信息;
从预设的功率和身份信息的对应关系中获取身份信息对应的额定功率;
确定电源所提供的总功率和已接入节点板卡的总功率的差值;
判断差值是否不小于节点板卡的额定功率;
如果差值不小于节点板卡的额定功率,则确定电源所提供的功率满足节点板卡上电,否则确定电源所提供的功率不满足节点板卡上电。
S12:将在位信号发送至PCIe Switch芯片以便触发PCIe Switch芯片执行热插拔流程中的插入流程将节点板卡接入。
由逻辑控制模块根据当前功率统计进行判断该节点是够可以上电,如果功率足够,则将在位传递给I/O Expander,I/O Expander再将该在位信号发送至PCIe Switch芯片以便触发PCIe Switch芯片的热插拔流程。可以理解的是,由于此处是在位信号,表征节点板卡插入,所以PCIe Switch芯片执行的是热插拔流程中的插入流程,而不是拔出流程,具体的拔出流程参见下文描述。
S13:输出提示信息。
在具体实施中,如果插入节点板卡,但是PCIe Switch芯片未执行热插拔流程时,通过节点板卡的指示灯会获知,本步骤中,为了能够更便捷的得到提示,逻辑控制模块会输出提示信息。可以理解的是,提示信息的输出方式有多种,本实施例不作限定。
本实施例提供的PCIe热插拔的控制方法,应用于包含有PCIe Switch芯片的服务器中,由于PCIe Switch芯片用于执行所述节点板卡的热插拔流程,所以热插拔流程不需要依赖操作系统内核设计和执行,避免了操作系统内核升级带来的影响。另外,由于PCIeSwitch芯片通过逻辑控制模块与节点板卡连接,所以对于PCIe Switch芯片来说,其不是直接接收节点板卡的在位信号,而是由逻辑控制模块转发,而逻辑控制模块转发在位信号之前,先判断电源所提供的功率是否满足节点板卡上电,在满足的情况下,才将在位信号发送PCIe Switch芯片,故PCIe Switch芯片在执行热插拔流程之前,排除了由于功率不足而导致节点板卡接入后供电不稳定的问题,提高了服务器的可靠性。
在具体实施中,当节点板卡插入后,通过PCIe Switch芯片实现各节点板卡之间的通信,但是在运行过程中,无论是电源的波动还是节点板卡自身的异常,都有可能导致出现某一节点板卡出现过流的情况,例如,某一节点板卡短路,此时需要将该节点板卡立即拔出,否则会导致主机挂死。但是,当前,只有在节点板卡被拔出时,才会产生拔出信号,触发PCIe Switch芯片执行拔出流程,所以该种情形下,严重依赖运维人员的观测,不仅增大了人力成本,且检测的效率较低。对于PCIe Switch芯片来说,如何能够及时获取到拔出信号至关重要。
针对上述情况,本实施例中,在上述实施例的基础上,在PCIe Switch芯片执行完插入流程后,还包括:
判断节点板卡是否过流;
如果节点板卡过流,则向PCIe Switch芯片发送拔出信号以便触发PCIe Switch芯片执行热插拔流程中的拔出流程将节点板卡拔出。
需要说明的是,节点板卡通常是包含有自身的过流判断机制,所以对于逻辑控制模块来说,其可以直接获取节点板卡发送的用于表征是否过流的状态信号以作为判断的依据,即如果接收到表征过流的状态信号,则判断节点板卡过流,如果接收到表征未过流的状态信号,则判断节点板卡没有过流。当然,在其它实施例中,逻辑控制模块还可以通过电流传感器直接获取节点板卡的电流从而与预设电流值进行比较,得到判断结果。
在具体实施中,节点板卡接入后,就立即对其进行过流检测,避免延迟。另外,为了减少误判的风险,还可以在连续得到多次表征过流的状态信号的情况下,确定节点板卡过流。例如,t1时刻获取到节点板卡发送的状态信号表征过流时,不触发PCIe Switch芯片执行热插拔流程中的拔出流程,而是继续等待,在t2时刻又获取到节点板卡发送的表征过流的状态信号时,才判断节点板卡过流,才触发PCIe Switch芯片执行热插拔流程中的拔出流程,同样的,如果在t2时刻获取到节点板卡发送的状态信号表征未过流时,则不触发PCIeSwitch芯片执行热插拔流程中的拔出流程。其中,t1和t2是相邻的两次接收状态信号的时刻。
本实施例中所提出的拔出信号实际上不是从节点板卡处获取到的拔出信号,而是逻辑控制模块判断出节点板卡出现过流后生成的一种模拟节点板卡被拔出时对应的拔出信号,但是由于PCIe Switch芯片与节点板卡不是直接连接,而是与逻辑控制模块直接连接,所以对于PCIe Switch芯片来说,其得到逻辑控制模块的拔出信号就会立即执行拔出流程。
本实施例中,克服了在节点板卡插入后,没有进行过流判断的机制所带来的缺点,提高了节点板卡的安全性,降低短路的风险。
上述实施例中,仅对逻辑控制模块与PCIe Switch芯片和节点板卡的连接关系进行了说明,并不限定具体的设置方式。如图1所示,本实施例中逻辑控制模块4与PCIeSwitch芯片3集成于服务器的交换板6,逻辑控制模块4和节点板卡2通过背板7连接,逻辑控制模块4和节点板卡2所传输的信号为低电平有效。
可以理解的是,逻辑控制模块与PCIe Switch芯片集成于服务器的交换板属于板内通信,抗干扰能力强,而逻辑控制模块和节点板卡通过背板连接属于板间通信,会受到外界信号的干扰,故逻辑控制模块和节点板卡所传输的信号为低电平有效,从而提高信号的抗干扰能力,避免逻辑控制模块误判。
在上述实施例的基础上,本实施例提供一种PCIe Switch芯片执行热插拔流程中的插入流程,包括如下步骤:
通过逻辑控制模块向节点板卡发出电源使能信号和时钟使能信号以通知节点板卡上电;
通过逻辑控制模块接收节点板卡发送的上电信号;
通过逻辑控制模块向节点板卡发送复位信号以使CPU扫描到节点板卡。
进一步的,为了避免由于节点板卡自身故障而引起的热插拔流程运行异常,本实施例中,加入了对接收上电信号的等待时长的考虑,如果等待时长超时,则表明本次热插拔流程结束。具体的,通过逻辑控制模块接收节点板卡发送的上电信号,包括:
判断是否接收到逻辑控制模块发送的上电信号;
如果未收到,则判断等待时长是否超时;其中,等待时长为当前时刻与发出电源使能信号和时钟使能信号的时刻的差值;
如果超时,则结束热插拔流程;
如果未超时,则返回判断是否接收到逻辑控制模块发送的上电信号的步骤;
如果接收到,则进入通过逻辑控制模块向节点板卡发送复位信号以使CPU扫描到节点板卡的步骤。
本实施例中,加入对等待上电信号的等待时长的考虑,能够避免长时间接收不到上电信号而PCIe Switch芯片一直处于等待的状态,提高了PCIe Switch芯片的执行效率。
在上述实施例的基础上,本实施例提供一种PCIe Switch芯片执行热插拔流程中的拔出流程,包括如下步骤:
在接收到逻辑控制模块发送的拔出信号后,触发CPU断开与拔出信号对应的PCIe链路;
通过逻辑控制模块向节点板卡发送复位信号、电源使能信号和时钟使能信号以通知节点板卡下电;
通过逻辑控制模块接收节点板卡发送的下电信号。
在具体实施中,节点板卡被按下Button键后会产生拔出信号,由逻辑控制模块发送至PCIe Switch芯片,PCIe Switch芯片触发CPU首先断开PCIe相关业务,PCIe链路断开后,通过复位信号拉起PCIe设备的复位,然后发出电源使能信号和时钟使能信号到逻辑控制模块,由逻辑控制模块转发给节点板卡,在节点板卡下电后,逻辑控制模块将下电信号反馈给PCIe Switch芯片,完成PCIe设备的移除。
如图1所示,PWR EN和CLK EN分别表示电源使能信号和时钟使能信号,PWR GD表示上电/下电信号,RST信号表示复位信号。
在上述实施例中,对于PCIe热插拔的控制方法进行了详细描述,本申请还提供PCIe热插拔的控制装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
图3为本申请实施例提供的一种PCIe热插拔的控制装置的结构图。如图3所示,该控制装置应用于包含有PCIe Switch芯片的服务器中,PCIe Switch芯片通过逻辑控制模块与节点板卡连接,用于执行节点板卡的热插拔流程。
该装置包括:
获取模块10,用于获取用于表征节点板卡插入的在位信号;
判断模块11,用于判断电源所提供的功率是否满足节点板卡上电;
触发模块12,用于在是判断模块的判断结果为是时,将在位信号发送至PCIeSwitch芯片以便触发PCIe Switch芯片执行热插拔流程中的插入流程将节点板卡接入。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
作为优选地实施方式,所述判断模块11还用于:
判断所述节点板卡是否过流;
如果所述节点板卡过流,则向所述PCIe Switch芯片发送拔出信号以便触发所述PCIe Switch芯片执行所述热插拔流程中的拔出流程将所述节点板卡拔出
本实施例提供的PCIe热插拔的控制装置,应用于包含有PCIe Switch芯片的服务器中,由于PCIe Switch芯片用于执行所述节点板卡的热插拔流程,所以热插拔流程不需要依赖操作系统内核设计和执行,避免了操作系统内核升级带来的影响。另外,由于PCIeSwitch芯片通过逻辑控制模块与节点板卡连接,所以对于PCIe Switch芯片来说,其不是直接接收节点板卡的在位信号,而是由逻辑控制模块转发,而逻辑控制模块转发在位信号之前,先判断电源所提供的功率是否满足节点板卡上电,在满足的情况下,才将在位信号发送PCIe Switch芯片,故PCIe Switch芯片在执行热插拔流程之前,排除了由于功率不足而导致节点板卡接入后供电不稳定的问题,提高了服务器的可靠性。
图4为本申请实施例提供的另一种PCIe热插拔的控制装置的结构图。如图4所示,基于硬件结构的角度,该装置包括存储器20,用于存储计算机程序;
处理器21,用于执行计算机程序时实现如上述实施例(PCIe热插拔的控制方法)的步骤。
本实施例提供的PCIe热插拔的控制装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的PCIe热插拔的控制方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括Windows、Unix、Linux等。数据203可以包括但不限于上述PCIe热插拔的控制方法所涉及到的数据。
在一些实施例中,PCIe热插拔的控制装置还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
本领域技术人员可以理解,图4中示出的结构并不构成对PCIe热插拔的控制装置的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的PCIe热插拔的控制装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:获取用于表征节点板卡插入的在位信号;判断电源所提供的功率是否满足节点板卡上电;如果是,则将在位信号发送至PCIe Switch芯片以便触发PCIe Switch芯片执行热插拔流程中的插入流程将节点板卡接入。对于PCIeSwitch芯片来说,其不是直接接收节点板卡的在位信号,而是由逻辑控制模块转发,而逻辑控制模块转发在位信号之前,先判断电源所提供的功率是否满足节点板卡上电,在满足的情况下,才将在位信号发送PCIe Switch芯片,故PCIe Switch芯片在执行热插拔流程之前,排除了由于功率不足而导致节点板卡接入后供电不稳定的问题,提高了服务器的可靠性。其由于热插拔流程由PCIe Switch芯片执行,故降低了对操作系统内核的依赖。
本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例(PCIe热插拔的控制方法)中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后,本申请还提供一种服务器,包括PCIe Switch芯片、逻辑控制模块和节点板卡,PCIe Switch芯片通过逻辑控制模块与节点板卡连接;
逻辑控制模块,用于在接收到节点板卡的在位信号后,判断电源所提供的功率是否满足节点板卡上电,如果满足,则将在位信号发送至PCIe Switch芯片;
PCIe Switch芯片,用于在接收到在位信号后,执行热插拔流程中的插入流程将节点板卡接入。
由于上文中对于PCIe Switch芯片、逻辑控制模块和节点板卡进行了详细描述,故本实施例不再赘述。
本实施例提供的服务器,包含有PCIe Switch芯片、逻辑控制模块和节点板卡,由于PCIe Switch芯片用于执行所述节点板卡的热插拔流程,所以热插拔流程不需要依赖操作系统内核设计和执行,避免了操作系统内核升级带来的影响。另外,由于PCIe Switch芯片通过逻辑控制模块与节点板卡连接,所以对于PCIe Switch芯片来说,其不是直接接收节点板卡的在位信号,而是由逻辑控制模块转发,而逻辑控制模块转发在位信号之前,先判断电源所提供的功率是否满足节点板卡上电,在满足的情况下,才将在位信号发送PCIeSwitch芯片,故PCIe Switch芯片在执行热插拔流程之前,排除了由于功率不足而导致节点板卡接入后供电不稳定的问题,提高了服务器的可靠性。
以上对本申请所提供的服务器及其PCIe热插拔的控制方法、装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种PCIe热插拔的控制方法,其特征在于,应用于包含有PCIe Switch芯片的服务器中,PCIe Switch芯片通过逻辑控制模块与节点板卡连接,用于执行所述节点板卡的热插拔流程,所述方法由所述逻辑控制模块实现,包括如下步骤:
获取用于表征所述节点板卡插入的在位信号;
判断电源所提供的功率是否满足所述节点板卡上电;
如果是,则将所述在位信号发送至所述PCIe Switch芯片以便触发所述PCIe Switch芯片执行所述热插拔流程中的插入流程将所述节点板卡接入。
2.根据权利要求1所述的PCIe热插拔的控制方法,其特征在于,在所述PCIe Switch芯片执行完所述插入流程后,还包括:
判断所述节点板卡是否过流;
如果所述节点板卡过流,则向所述PCIe Switch芯片发送拔出信号以便触发所述PCIeSwitch芯片执行所述热插拔流程中的拔出流程将所述节点板卡拔出。
3.根据权利要求1或2所述的PCIe热插拔的控制方法,其特征在于,所述逻辑控制模块与所述PCIe Switch芯片集成于所述服务器的交换板,所述逻辑控制模块和所述节点板卡通过背板连接,所述逻辑控制模块和所述节点板卡所传输的信号为低电平有效。
4.根据权利要求1所述的PCIe热插拔的控制方法,其特征在于,所述PCIe Switch芯片执行所述热插拔流程中的插入流程将所述节点板卡接入包括:
通过所述逻辑控制模块向所述节点板卡发出电源使能信号和时钟使能信号以通知所述节点板卡上电;
通过所述逻辑控制模块接收所述节点板卡发送的上电信号;
通过所述逻辑控制模块向所述节点板卡发送复位信号以使CPU扫描到所述节点板卡。
5.根据权利要求2所述的PCIe热插拔的控制方法,其特征在于,所述PCIe Switch芯片执行所述热插拔流程中的拔出流程将所述节点板卡拔出包括:
在接收到所述逻辑控制模块发送的所述拔出信号后,触发CPU断开与所述拔出信号对应的PCIe链路;
通过所述逻辑控制模块向所述节点板卡发送复位信号、电源使能信号和时钟使能信号以通知所述节点板卡下电;
通过所述逻辑控制模块接收所述节点板卡发送的下电信号。
6.根据权利要求4所述的PCIe热插拔的控制方法,其特征在于,所述通过所述逻辑控制模块接收所述节点板卡发送的上电信号,包括:
判断是否接收到所述逻辑控制模块发送的所述上电信号;
如果未收到,则判断等待时长是否超时;其中,所述等待时长为当前时刻与发出所述电源使能信号和所述时钟使能信号的时刻的差值;
如果超时,则结束所述热插拔流程;
如果未超时,则返回所述判断是否接收到所述逻辑控制模块发送的所述上电信号的步骤;
如果接收到,则进入所述通过所述逻辑控制模块向所述节点板卡发送复位信号以使CPU扫描到所述节点板卡的步骤。
7.一种PCIe热插拔的控制装置,其特征在于,应用于包含有PCIe Switch芯片的服务器中,PCIe Switch芯片通过逻辑控制模块与节点板卡连接,用于执行所述节点板卡的热插拔流程所述装置包括:
获取模块,用于获取用于表征所述节点板卡插入的所述在位信号;
判断模块,用于判断电源所提供的功率是否满足所述节点板卡上电;
触发模块,用于在是判断模块的判断结果为是时,将所述在位信号发送至所述PCIeSwitch芯片以便触发所述PCIe Switch芯片执行所述热插拔流程中的插入流程将所述节点板卡接入。
8.一种PCIe热插拔的控制装置,其特征在于,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的PCIe热插拔的控制方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的PCIe热插拔的控制方法的步骤。
10.一种服务器,其特征在于,包括PCIe Switch芯片、逻辑控制模块和节点板卡,所述PCIe Switch芯片通过所述逻辑控制模块与所述节点板卡连接;
所述逻辑控制模块,用于在接收到所述节点板卡的在位信号后,判断电源所提供的功率是否满足所述节点板卡上电,如果满足,则将所述在位信号发送至所述PCIe Switch芯片;
所述PCIe Switch芯片,用于在接收到所述在位信号后,执行热插拔流程中的插入流程将所述节点板卡接入。
CN202110474323.4A 2021-04-29 2021-04-29 一种服务器及其PCIe热插拔的控制方法、装置及介质 Pending CN115269474A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110474323.4A CN115269474A (zh) 2021-04-29 2021-04-29 一种服务器及其PCIe热插拔的控制方法、装置及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110474323.4A CN115269474A (zh) 2021-04-29 2021-04-29 一种服务器及其PCIe热插拔的控制方法、装置及介质

Publications (1)

Publication Number Publication Date
CN115269474A true CN115269474A (zh) 2022-11-01

Family

ID=83745116

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110474323.4A Pending CN115269474A (zh) 2021-04-29 2021-04-29 一种服务器及其PCIe热插拔的控制方法、装置及介质

Country Status (1)

Country Link
CN (1) CN115269474A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115543907A (zh) * 2022-11-24 2022-12-30 苏州浪潮智能科技有限公司 一种基于存储设备中PCIe芯片的控制方法和装置
WO2024098942A1 (zh) * 2022-11-08 2024-05-16 超聚变数字技术有限公司 PCIe设备管理方法、设备及服务器

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024098942A1 (zh) * 2022-11-08 2024-05-16 超聚变数字技术有限公司 PCIe设备管理方法、设备及服务器
CN115543907A (zh) * 2022-11-24 2022-12-30 苏州浪潮智能科技有限公司 一种基于存储设备中PCIe芯片的控制方法和装置

Similar Documents

Publication Publication Date Title
CN111339010B (zh) 一种pcie设备热插拔识别方法、系统及相关组件
CN112463689B (zh) 一种ocp卡热插拔装置、方法及计算机可读存储介质
WO2016202040A1 (zh) 一种基于pcie子卡热插拔的方法及装置
CN115269474A (zh) 一种服务器及其PCIe热插拔的控制方法、装置及介质
CN105354116B (zh) 一种热插拔检测方法、装置、系统及移动终端
CN112799985B (zh) Usb接口控制方法、usb控制电路及智能网联设备主板
JP2024512316A (ja) 拡張カードの独立スロット制御
CN111488048A (zh) 一种电源管理方法以及系统
CN1790224B (zh) 参考时钟单元以及参考时钟的配置方法和系统
CN111881074B (zh) 电子系统、主机端装置及控制方法
CN113568855A (zh) 一种低成本的pcie热拔插多模式兼容装置
CN117331423A (zh) Pcie设备的供电方法和装置、存储介质及电子装置
CN109542198B (zh) 一种控制pcie卡上电的方法及设备
CN115509333A (zh) 一种服务器协同上下电装置、方法、系统及介质
CN115102937B (zh) 一种服务器电源自适应通讯方法、设备及介质
CN114185720B (zh) 服务器动态热备份的方法、装置、设备及存储介质
CN113946530A (zh) 扩展卡的控制方法及装置、非易失性存储介质
CN114996069A (zh) 一种主板测试方法、装置以及介质
CN115952129A (zh) 一种刀片服务器设置方法、装置及可读存储介质
CN112527091B (zh) 电源管理方法、固件更新方法、装置、设备、介质和产品
CN101387966A (zh) 具有基本输入输出系统选择功能的电脑设备
CN111147401B (zh) 一种phy卡热插拔方法与装置
CN115905072A (zh) 计算机系统、基于PCIe设备的控制方法及相关设备
CN214540750U (zh) Usb控制电路、智能网联设备主板及电子设备
CN213987485U (zh) 一种支持usb实时自动修复的多串口与多usb接口的主板

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