CN110955624B - 一种pcie设备的热插拔方法、装置和系统 - Google Patents

一种pcie设备的热插拔方法、装置和系统 Download PDF

Info

Publication number
CN110955624B
CN110955624B CN201811124406.5A CN201811124406A CN110955624B CN 110955624 B CN110955624 B CN 110955624B CN 201811124406 A CN201811124406 A CN 201811124406A CN 110955624 B CN110955624 B CN 110955624B
Authority
CN
China
Prior art keywords
pcie
identification information
hot plug
pcie switch
target
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
Application number
CN201811124406.5A
Other languages
English (en)
Other versions
CN110955624A (zh
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201811124406.5A priority Critical patent/CN110955624B/zh
Publication of CN110955624A publication Critical patent/CN110955624A/zh
Application granted granted Critical
Publication of CN110955624B publication Critical patent/CN110955624B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/32Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer
    • 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
    • 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/24Interrupt
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种PCIE设备的热插拔方法、装置和系统。方法包括:PCIE交换机程序接收热插拔命令,其中,所述热插拔命令中包括第一标识信息和第二标识信息,所述第一标识信息为目标PCIE交换机接口的标识信息,所述第二标识信息为挂接在所述目标PCIE交换机接口上的目标PCIE设备的标识信息;所述PCIE交换机程序根据与所述第一标识信息对应的中断资源,生成中断请求,其中,所述中断请求用于请求对所述目标PCIE设备执行热插拔操作;所述PCIE交换机程序向物理服务器发送所述中断请求。

Description

一种PCIE设备的热插拔方法、装置和系统
技术领域
本申请涉及计算机技术领域,尤其涉及一种PCIE设备的热插拔方法、装置和系统。
背景技术
PCIE(peripheral component interconnect express)是一种高速串行计算机扩展总线标准。PCIE属于高速串行点对点双通道高带宽传输,所连接的设备分配独享通道带宽,不共享总线带宽,主要支持主动电源管理,错误报告,端对端的可靠性传输,热插拔以及服务质量(QOS)等功能。实际应用中,当在物理服务器上热插拔一个PCIE设备时,依赖于人工按压物理PCIE交换机下行口的热插拔按钮,导致PCIE设备热插拔过程操作复杂、效率较低。
发明内容
本说明书实施例提供一种PCIE设备的热插拔方法、装置和系统,用于避免人工按压热插拔按钮的操作,有效简化热插拔操作过程,提高热插拔效率。
第一方面,本说明书实施例提供了一种PCIE设备的热插拔方法,包括:
PCIE交换机程序接收热插拔命令,其中,所述热插拔命令中包括第一标识信息和第二标识信息,所述第一标识信息为目标PCIE交换机接口的标识信息,所述第二标识信息为挂接在所述目标PCIE交换机接口上的目标PCIE设备的标识信息;
所述PCIE交换机程序根据与所述第一标识信息对应的中断资源,生成中断请求,其中,所述中断请求用于请求对所述目标PCIE设备执行热插拔操作;
所述PCIE交换机程序向物理服务器发送所述中断请求。
第二方面,本说明书实施例还提供了一种PCIE设备的热插拔装置,用于执行如第一方面所述的PCIE设备的热插拔方法,所述装置包括:
接收模块,控制PCIE交换机程序接收热插拔命令,其中,所述热插拔命令中包括第一标识信息和第二标识信息,所述第一标识信息为目标PCIE交换机接口的标识信息,所述第二标识信息为挂接在所述目标PCIE交换机接口上的目标PCIE设备的标识信息;
生成模块,控制所述PCIE交换机程序根据与所述第一标识信息对应的中断资源,生成中断请求,其中,所述中断请求用于请求对所述目标PCIE设备执行热插拔操作;
发送模块,所述PCIE交换机程序向物理服务器发送所述中断请求。
第三方面,本说明书实施例还提供了一种电子设备,包括:
存储器,存放程序;
处理器,执行所述存储器存储的程序,并具体执行如第一方面所述的PCIE设备的热插拔方法。
本说明书实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行如第一方面所述的PCIE设备的热插拔方法。
本说明书实施例还提供了一种PCIE设备的热插拔系统,包括:
PCIE交换机程序,接收热插拔命令,其中,所述热插拔命令中包括第一标识信息和第二标识信息,所述第一标识信息为目标PCIE交换机接口的标识信息,所述第二标识信息为挂接在所述目标PCIE交换机接口上的目标PCIE设备的标识信息;
所述PCIE交换机程序,根据与所述第一标识信息对应的中断资源,生成中断请求,其中,所述中断请求用于请求对所述目标PCIE设备执行热插拔操作;
所述PCIE交换机程序,向物理服务器发送所述中断请求;
所述物理服务器,根据所述中断请求,读取所述目标PCIE交换机接口的状态寄存器;
所述物理服务器,根据所述状态寄存器,判断所述中断请求对应的是热插中断或热拔中断;
所述物理服务器,根据判断结果,对所述目标PCIE设备执行热插操作或热拔操作。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
PCIE交换机程序接收包括第一标识信息和第二标识信息的热插拔命令,其中,第一标识信息为目标PCIE交换机接口的标识信息,第二标识信息为挂接在目标PCIE交换机接口上的目标PCIE设备的标识信息,进而PCIE交换机程序根据与第一标识信息对应的中断资源,生成用于请求对目标PCIE设备执行热插拔操作的中断请求,并向物理服务器发送中断请求,从而能够避免人工按压热插拔按钮的操作,有效简化热插拔操作过程,提高热插拔效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本说明书实施例提供的一种PCIE设备的热插拔方法的流程示意图;
图2为本说明书实施例提供的一种PCIE设备的热插拔示意图;
图3为本说明书实施例提供的一种电子设备的结构示意图;
图4为本说明书实施例提供的一种PCIE设备的热插拔装置的结构示意图。
具体实施方式
下面结合本说明书具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图1为本说明书实施例提供的一种PCIE设备的热插拔方法的流程示意图。所述方法可以如下所示。
步骤102,PCIE交换机程序接收热插拔命令,其中,热插拔命令中包括第一标识信息和第二标识信息,第一标识信息为目标PCIE交换机接口的标识信息,第二标识信息为挂接在目标PCIE交换机接口上的目标PCIE设备的标识信息。
通过PCIE交换机程序可以模拟一级或多级虚拟PCIE交换机,使得通过PCIE交换机程序可以接收热插拔命令,而无需部署物理PCIE交换机,从而可以减少物理空间的占用,灵活配置一级或多级虚拟PCIE交换机。
本说明书实施例中,PCIE交换机程序接收热插拔命令,包括:
PCIE交换机程序接收用户通过管理控制界面触发的热插拔命令。
通过PCIE交换机程序模拟一级或多级虚拟PCIE交换机时,PCIE交换机程序可以向用户提供一个管理控制界面,在管理控制界面中,包括PCIE交换机程序模拟的各级PCIE交换机之间的层级关系,以及每一级PCIE交换机对应的接口信息。
用户根据自身需要,在管理控制界面中触发热插拔命令,进而使得PCIE交换机程序接收到该热插拔命令,该热插拔命令中包括第一标识信息和第二标识信息,第一标识信息为目标PCIE交换机接口的标识信息,第二标识信息为挂接在目标PCIE交换机接口上的目标PCIE设备的标识信息。
通过热插拔命令,PCIE交换机程序可以了解到用户在PCIE交换机程序模拟的虚拟PCIE交换机中选择的目标PCIE交换机接口,以及挂接在目标PCIE交换机接口上的是何种目标PCIE设备。
图2为本说明书实施例提供的一种PCIE设备的热插拔示意图。
如图2所示,目标PCIE设备和PCIE交换机程序之间通过目标连接链路进行连接。
需要说明的是,目标连接链路可以是软件链路,也可以是硬件链路(例如,PCIE链路),还可以是其他链路,这里不做具体限定。
本说明书实施例中,目标PCIE设备为物理PCIE设备或虚拟PCIE设备。
当PCIE交换机程序模拟的是已经部署完成的物理PCIE交换机时,目标PCIE设备可以是挂接在物理PCIE交换机某下行口上的物理PCIE设备;
当未实际部署物理PCIE交换机,而仅通过PCIE交换机程序模拟一级或多级虚拟PCIE交换机,目标PCIE设备可以是挂接在虚拟PCIE交换机某下行口上的虚拟PCIE设备。
步骤104,PCIE交换机程序根据与第一标识信息对应的中断资源,生成中断请求,其中,中断请求用于请求对目标PCIE设备执行热插拔操作。
在物理服务器上插入PCIE交换机卡,使得在应用层中可以通过PCIE交换机程序模拟一级或多级虚拟PCIE交换机。
物理服务器启动时,可以通过扫描PCIE设备找到该PCIE交换机卡,进而为PCIE交换机程序分配目标资源。其中,目标资源包括下:PCIE地址、虚拟PCIE交换机中各个接口对应的中断资源(例如,消息信号中断(MSI,Message Signaled Interrupt)资源),等。
当PCIE交换机程序接收到热插拔命令之后,可以根据热插拔命令中包括的目标PCIE交换机接口的第一标识信息,确定目标PCIE交换机接口对应的MSI资源,进而根据目标PCIE交换机接口对应的MSI资源,生成中断请求(例如,MSI请求),其中,MSI请求用于请求对挂接在目标PCIE交换机接口上的目标PCIE设备执行热插拔操作。
PCIE交换机程序根据热插拔命令生成MSI请求,可以避免人工按压挂接有PCIE设备的PCIE交换机下行口按钮来生成MSI请求的复杂操作。
步骤106,PCIE交换机程序向物理服务器发送中断请求。
具体地,PCIE交换机程序向物理服务器发送中断请求,包括:
PCIE交换机程序通过PCIE链路适配器向物理服务器发送中断请求。
仍以上述图2为例,如图2所示,物理服务器和PCIE交换机程序之间通过PCIE链路适配器进行通信,PCIE链路适配器根据PCIE事务层协议(TLP,Transaction LayerProtocol),将PCIE交换机程序生成的中断请求发送到物理服务器。
本说明书实施例中,PCIE链路适配器包括下述至少一种:
现场可变成门阵列(FPGA,Field Programmable Gate Array)、特定用途集成电路(ASIC,Application Specific Integrated Circuit)、片上系统(SOC,System on aChip)。
需要说明的是,PCIE链路适配器除了可以是上述FPGA、ASIC、SOC之外,还可以是其它可以用于物理服务器和PCIE交换机程序之间进行通信的适配器,这里不做具体限定。
如图2所示,PCIE交换机程序和PCIE链路适配器之间设置有通信接口,用于PCIE交换机程序和PCIE链路适配器之间进行通信。
需要说明的是,通信接口可以是软件接口,也可以是各种硬件接口(例如,PCIE链路),这里不做具体限定。
如图2所示,PCIE链路适配器和物理服务器之间通过PCIE链路进行通信。
本说明书实施例中,还包括:
物理服务器根据中断请求,读取目标PCIE交换机接口的状态寄存器;
物理服务器根据状态寄存器,判断中断请求对应的是热插中断或热拔中断;
物理服务器根据判断结果,对目标PCIE设备执行热插操作或热拔操作。
物理服务器接收到PCIE交换机程序发送的MSI请求之后,读取目标PCIE交换机接口的状态寄存器,根据目标PCIE交换机接口的状态寄存器,可以判断MSI请求对应的是目标PCIE交换机接口的热插中断还是热拔中断。
下面分别针对热插中断和热拔中断进行详细描述。
第一种:
本说明书实施例中,物理服务器根据判断结果,对目标PCIE设备执行热插操作,包括:
当中断请求对应的是热插中断时,物理服务器向PCIE交换机程序发送热插命令;
PCIE交换机程序根据热插命令,控制目标PCIE交换机接口上电,以及扫描接入目标PCIE设备。
物理服务器根据目标PCIE交换机接口的状态寄存器,确定MSI请求对应的是热插中断时,开始执行热插操作:向PCIE交换机程序发送热插命令,使得PCIE交换机程序根据热插命令,控制目标PCIE交换机接口上电,扫描接入挂接在目标PCIE交换机接口上的目标PCIE设备,以及当目标PCIE设备插入完毕之后,控制目标PCIE交换机接口的电源指示灯变为绿色。
当PCIE交换机程序确定目标PCIE交换机接口的电源指示灯变为绿色之后,通过管理控制界面向用户发送第一提示信息,第一提示信息用于提示用户目标PCIE设备热插入完成。
第二种:
本说明书实施例中,物理服务器根据判断结果,对目标PCIE设备执行热拔操作,包括:
当中断请求对应的是热拔中断时,物理服务器向PCIE交换机程序发送热拔命令;
PCIE交换机程序根据热拔命令,控制目标PCIE交换机接口下电,以及卸载目标PCIE设备。
物理服务器根据目标PCIE交换机接口的状态寄存器,确定MSI请求对应的是热拔中断时,开始执行热拔操作:向PCIE交换机程序发送热拔命令,使得PCIE交换机程序根据热拔命令,控制目标PCIE交换机接口下电,卸载挂接在目标PCIE交换机接口上的目标PCIE设备,以及当目标PCIE设备卸载完毕之后,控制目标PCIE交换机接口的电源指示灯熄灭。
当PCIE交换机程序确定目标PCIE交换机接口的电源指示灯熄灭之后,通过管理控制界面向用户发送第二提示信息,第二提示信息用于提示用户目标PCIE设备热拔出完成。
本说明书实施例记载的技术方案,PCIE交换机程序接收包括第一标识信息和第二标识信息的热插拔命令,其中,第一标识信息为目标PCIE交换机接口的标识信息,第二标识信息为挂接在目标PCIE交换机接口上的目标PCIE设备的标识信息,进而PCIE交换机程序根据与第一标识信息对应的中断资源,生成用于请求对目标PCIE设备执行热插拔操作的中断请求,并向物理服务器发送中断请求,从而能够避免人工按压热插拔按钮的操作,有效简化热插拔操作过程,提高热插拔效率。
图3为本说明书实施例提供的一种电子设备的结构示意图。如图3所示,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成PCIE设备的热插拔装置。处理器,执行存储器所存放的程序,并具体执行以下操作:
接收热插拔命令,其中,热插拔命令中包括第一标识信息和第二标识信息,第一标识信息为目标PCIE交换机接口的标识信息,第二标识信息为挂接在目标PCIE交换机接口上的目标PCIE设备的标识信息;
根据与第一标识信息对应的中断资源,生成中断请求,其中,中断请求用于请求对目标PCIE设备执行热插拔操作;
向物理服务器发送中断请求。
上述如图1所述的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本说明书实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图1所示实施例执行的方法,并实现上述图1所示实施例的功能,本说明书实施例在此不再赘述。
本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图1所示实施例中的PCIE设备的热插拔方法,并具体执行下述操作:
接收热插拔命令,其中,热插拔命令中包括第一标识信息和第二标识信息,第一标识信息为目标PCIE交换机接口的标识信息,第二标识信息为挂接在目标PCIE交换机接口上的目标PCIE设备的标识信息;
根据与第一标识信息对应的中断资源,生成中断请求,其中,中断请求用于请求对目标PCIE设备执行热插拔操作;
向物理服务器发送中断请求。
图4为本说明书实施例提供的一种PCIE设备的热插拔装置的结构示意图。图4所示的装置400可以用于执行上述图1-图2所示实施例的步骤,装置400包括:
接收模块401,控制PCIE交换机程序接收热插拔命令,其中,热插拔命令中包括第一标识信息和第二标识信息,第一标识信息为目标PCIE交换机接口的标识信息,第二标识信息为挂接在目标PCIE交换机接口上的目标PCIE设备的标识信息;
生成模块402,控制PCIE交换机程序根据与第一标识信息对应的中断资源,生成中断请求,其中,中断请求用于请求对目标PCIE设备执行热插拔操作;
发送模块403,控制PCIE交换机程序向物理服务器发送中断请求。
可选地,发送模块403,具体用于:
通过PCIE链路适配器向物理服务器发送中断请求。
可选地,装置400还包括:
读取模块,控制物理服务器根据中断请求,读取目标PCIE交换机接口的状态寄存器;
判断模块,控制物理服务器根据状态寄存器,判断中断请求对应的是热插中断或热拔中断;
处理模块,控制物理服务器根据判断结果,对目标PCIE设备执行热插操作或热拔操作。
可选地,接收模块401,具体用于:
接收用户通过管理控制界面触发的热插拔命令。
可选地,PCIE链路适配器包括下述至少一种:
FPGA、ASIC、SOC。
可选地,处理模块,具体用于:
当中断请求对应的是热插中断时,控制物理服务器向PCIE交换机程序发送热插命令;
控制PCIE交换机程序根据热插命令,控制目标PCIE交换机接口上电,以及扫描接入目标PCIE设备。
可选地,处理模块,具体用于:
当中断请求对应的是热拔中断时,控制物理服务器向PCIE交换机程序发送热拔命令;
控制PCIE交换机程序根据热拔命令,控制目标PCIE交换机接口下电,以及卸载目标PCIE设备。
可选地,目标PCIE设备为物理PCIE设备或虚拟PCIE设备。
根据PCIE设备的热插拔装置,接收模块控制PCIE交换机程序接收热插拔命令,其中,热插拔命令中包括第一标识信息和第二标识信息,第一标识信息为目标PCIE交换机接口的标识信息,第二标识信息为挂接在目标PCIE交换机接口上的目标PCIE设备的标识信息;生成模块控制PCIE交换机程序根据与第一标识信息对应的中断资源,生成中断请求,其中,中断请求用于请求对目标PCIE设备执行热插拔操作;发送模块PCIE交换机程序向物理服务器发送中断请求,从而能够避免人工按压热插拔按钮的操作,有效简化热插拔操作过程,提高热插拔效率。
本说明书实施例还提供了一种PCIE设备的热插拔系统,包括:
PCIE交换机程序,接收热插拔命令,其中,热插拔命令中包括第一标识信息和第二标识信息,第一标识信息为目标PCIE交换机接口的标识信息,第二标识信息为挂接在目标PCIE交换机接口上的目标PCIE设备的标识信息;
PCIE交换机程序,根据与第一标识信息对应的中断资源,生成中断请求,其中,中断请求用于请求对目标PCIE设备执行热插拔操作;
PCIE交换机程序,向物理服务器发送中断请求;
物理服务器,根据中断请求,读取目标PCIE交换机接口的状态寄存器;
物理服务器,根据状态寄存器,判断中断请求对应的是热插中断或热拔中断;
物理服务器,根据判断结果,对目标PCIE设备执行热插操作或热拔操作。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (11)

1.一种PCIE设备的热插拔方法,包括:
外设部件高速互连标准PCIE交换机程序接收用户通过管理控制界面触发的热插拔命令,其中,所述热插拔命令中包括第一标识信息和第二标识信息,所述第一标识信息为目标PCIE交换机接口的标识信息,所述第二标识信息为挂接在所述目标PCIE交换机接口上的目标PCIE设备的标识信息;
所述PCIE交换机程序根据与所述第一标识信息对应的中断资源,生成中断请求,其中,所述中断请求用于请求对所述目标PCIE设备执行热插拔操作;
所述PCIE交换机程序向物理服务器发送所述中断请求。
2.如权利要求1所述的方法,所述PCIE交换机程序向物理服务器发送所述中断请求,包括:
所述PCIE交换机程序通过PCIE链路适配器向所述物理服务器发送所述中断请求。
3.如权利要求2所述的方法,所述方法还包括:
所述物理服务器根据所述中断请求,读取所述目标PCIE交换机接口的状态寄存器;
所述物理服务器根据所述状态寄存器,判断所述中断请求对应的是热插中断或热拔中断;
所述物理服务器根据判断结果,对所述目标PCIE设备执行热插操作或热拔操作。
4.如权利要求2所述的方法,所述PCIE链路适配器包括下述至少一种:
现场可变成门阵列FPGA、特定用途集成电路ASIC、片上系统SOC。
5.如权利要求3所述的方法,所述物理服务器根据判断结果,对所述目标PCIE设备执行热插操作,包括:
当所述中断请求对应的是热插中断时,所述物理服务器向所述PCIE交换机程序发送热插命令;
所述PCIE交换机程序根据所述热插命令,控制所述目标PCIE交换机接口上电,以及扫描接入所述目标PCIE设备。
6.如权利要求3所述的方法,所述物理服务器根据判断结果,对所述目标PCIE设备执行热拔操作,包括:
当所述中断请求对应的是热拔中断时,所述物理服务器向所述PCIE交换机程序发送热拔命令;
所述PCIE交换机程序根据所述热拔命令,控制所述目标PCIE交换机接口下电,以及卸载所述目标PCIE设备。
7.如权利要求1-6任一项所述的方法,所述目标PCIE设备为物理PCIE设备或虚拟PCIE设备。
8.一种PCIE设备的热插拔装置,用于执行如权利要求1-7任一项所述的PCIE设备的热插拔方法,所述装置包括:
接收模块,控制PCIE交换机程序接收热插拔命令,其中,所述热插拔命令中包括第一标识信息和第二标识信息,所述第一标识信息为目标PCIE交换机接口的标识信息,所述第二标识信息为挂接在所述目标PCIE交换机接口上的目标PCIE设备的标识信息;
生成模块,控制所述PCIE交换机程序根据与所述第一标识信息对应的中断资源,生成中断请求,其中,所述中断请求用于请求对所述目标PCIE设备执行热插拔操作;
发送模块,控制所述PCIE交换机程序向物理服务器发送所述中断请求。
9.一种电子设备,包括:
存储器,存放程序;
处理器,执行所述存储器存储的程序,并具体执行如权利要求1-7任一项所述的PCIE设备的热插拔方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行如权利要求1-7任一项所述的PCIE设备的热插拔方法。
11.一种PCIE设备的热插拔系统,包括:
PCIE交换机程序,接收用户通过管理控制界面触发的热插拔命令,其中,所述热插拔命令中包括第一标识信息和第二标识信息,所述第一标识信息为目标PCIE交换机接口的标识信息,所述第二标识信息为挂接在所述目标PCIE交换机接口上的目标PCIE设备的标识信息;
所述PCIE交换机程序,根据与所述第一标识信息对应的中断资源,生成中断请求,其中,所述中断请求用于请求对所述目标PCIE设备执行热插拔操作;
所述PCIE交换机程序,向物理服务器发送所述中断请求;
所述物理服务器,根据所述中断请求,读取所述目标PCIE交换机接口的状态寄存器;
所述物理服务器,根据所述状态寄存器,判断所述中断请求对应的是热插中断或热拔中断;
所述物理服务器,根据判断结果,对所述目标PCIE设备执行热插操作或热拔操作。
CN201811124406.5A 2018-09-26 2018-09-26 一种pcie设备的热插拔方法、装置和系统 Active CN110955624B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811124406.5A CN110955624B (zh) 2018-09-26 2018-09-26 一种pcie设备的热插拔方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811124406.5A CN110955624B (zh) 2018-09-26 2018-09-26 一种pcie设备的热插拔方法、装置和系统

Publications (2)

Publication Number Publication Date
CN110955624A CN110955624A (zh) 2020-04-03
CN110955624B true CN110955624B (zh) 2023-08-15

Family

ID=69964508

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811124406.5A Active CN110955624B (zh) 2018-09-26 2018-09-26 一种pcie设备的热插拔方法、装置和系统

Country Status (1)

Country Link
CN (1) CN110955624B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114020670B (zh) * 2021-10-28 2024-04-26 郑州云海信息技术有限公司 一种pcie卡的管理方法、系统、设备及存储介质
CN115858440A (zh) * 2022-11-08 2023-03-28 超聚变数字技术有限公司 PCIe设备管理方法、设备及服务器
CN118568030A (zh) * 2023-02-21 2024-08-30 华为云计算技术有限公司 热插拔方法及装置、计算机设备
CN116737636B (zh) * 2023-08-11 2024-09-10 珠海星云智联科技有限公司 Pcie设备热拔插控制方法及相关装置
CN117951062B (zh) * 2024-03-26 2024-06-11 安擎计算机信息股份有限公司 一种gpu热插拔方法和服务器系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003054713A2 (en) * 2001-12-19 2003-07-03 Intel Corporation Hot plug interface control method and apparatus
CN102023940A (zh) * 2009-09-16 2011-04-20 研祥智能科技股份有限公司 一种cpci热插拔系统
CN102446149A (zh) * 2010-10-14 2012-05-09 上海研祥智能科技有限公司 一种能够实现紧凑型pci产品热插拔的处理方法以及系统
CN103412836A (zh) * 2013-06-26 2013-11-27 华为技术有限公司 热插拔处理方法、装置以及系统
CN103631736A (zh) * 2013-11-27 2014-03-12 华为技术有限公司 设备资源控制方法和装置
CN105677606A (zh) * 2014-11-21 2016-06-15 杭州华为数字技术有限公司 总线设备的热插拔方法及总线装置
CN106201963A (zh) * 2016-07-11 2016-12-07 浪潮(北京)电子信息产业有限公司 一种用于服务器内pci‑e卡热插拔的系统
CN107038137A (zh) * 2016-02-04 2017-08-11 华为技术有限公司 一种热插拔的设备及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9934187B2 (en) * 2014-12-17 2018-04-03 Quanta Computer Inc. Hot-pluggable computing system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003054713A2 (en) * 2001-12-19 2003-07-03 Intel Corporation Hot plug interface control method and apparatus
CN102023940A (zh) * 2009-09-16 2011-04-20 研祥智能科技股份有限公司 一种cpci热插拔系统
CN102446149A (zh) * 2010-10-14 2012-05-09 上海研祥智能科技有限公司 一种能够实现紧凑型pci产品热插拔的处理方法以及系统
CN103412836A (zh) * 2013-06-26 2013-11-27 华为技术有限公司 热插拔处理方法、装置以及系统
CN103631736A (zh) * 2013-11-27 2014-03-12 华为技术有限公司 设备资源控制方法和装置
CN105677606A (zh) * 2014-11-21 2016-06-15 杭州华为数字技术有限公司 总线设备的热插拔方法及总线装置
CN107038137A (zh) * 2016-02-04 2017-08-11 华为技术有限公司 一种热插拔的设备及方法
CN106201963A (zh) * 2016-07-11 2016-12-07 浪潮(北京)电子信息产业有限公司 一种用于服务器内pci‑e卡热插拔的系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
罗斌 ; 吕杨 ; .对RS232转USB接口的通信方法研究设计.办公自动化.2009,(08),全文. *

Also Published As

Publication number Publication date
CN110955624A (zh) 2020-04-03

Similar Documents

Publication Publication Date Title
CN110955624B (zh) 一种pcie设备的热插拔方法、装置和系统
US10282192B1 (en) Updating device code through a bus
US10866737B2 (en) Apparatus, method and system to store information for a solid state drive
CN107480086B (zh) 终端及其控制方法
CN107357726A (zh) 一种应用程序兼容性测试方法和装置
CN109324991B (zh) 一种pcie设备的热插拔装置、方法、介质及系统
CN110737608B (zh) 一种数据操作方法、装置及系统
JP2020528191A (ja) 仮想カード開設方法およびシステム、決済システム、ならびにカード発行システム
CN108845876B (zh) 一种业务分配的方法及装置
JP2009514084A (ja) リセット装置を具えたデータ処理装置
WO2022199284A1 (zh) 调用栈回溯方法、装置、设备和介质
KR101821016B1 (ko) 제어 시스템의 구성요소에 식별자를 할당하는 장치, 시스템 및 방법
CN114143140A (zh) 一种数据传输系统、方法、存储介质及电子设备
WO2024141124A1 (zh) eSIM设备的LPA自动编译方法、系统及介质
US20170139726A1 (en) Serial device emulator using two memory levels with dynamic and configurable response
CN105677606B (zh) 总线设备的热插拔方法及总线装置
EP3188446A1 (en) Remote resource access method and exchange device
WO2024032388A1 (zh) 一种用于安全验证的主板以及安全验证方法、装置及介质
US11012372B2 (en) Electronic apparatus and method for control thereof
CN114968864B (zh) 验证环境的搭建方法、芯片的验证方法及系统
US7243178B2 (en) Enable/disable claiming of a DMA request interrupt
CN110502551A (zh) 数据读写方法、系统及架构组件
US10402454B1 (en) Obtaining platform-specific information in a firmware execution environment
CN117215966B (zh) 一种芯片sdk接口的测试方法、测试装置及电子设备
WO2024099274A1 (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40026979

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant