CN115114219B - 一种pci-e拓扑方法、装置、设备及存储介质 - Google Patents
一种pci-e拓扑方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115114219B CN115114219B CN202210868154.7A CN202210868154A CN115114219B CN 115114219 B CN115114219 B CN 115114219B CN 202210868154 A CN202210868154 A CN 202210868154A CN 115114219 B CN115114219 B CN 115114219B
- Authority
- CN
- China
- Prior art keywords
- pci
- downstream ports
- topology
- buses
- switch
- 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
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/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
本申请公开了一种PCI‑E拓扑方法,涉及计算机技术领域,该方法包括:利用预设配置接口确定在PCI‑E拓扑结构中交换机的下游端口数量;基于所述下游端口数量和在所述PCI‑E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量;根据所述目标总线的数量在所述交换机上创建设备以实现PCI‑E拓扑。通过本申请的技术方案,可以通过配置控制呈现的下游端口数量,从而控制整个拓扑结构中需要分配的目标总线数量,可适用于不同能力的插槽,满足实际应用环境的限制。此外,本申请还提供了一种PCI‑E拓扑装置、设备及存储介质,其技术效果与上述方法的技术效果相对应。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种PCI-E拓扑方法、装置、设备及存储介质。
背景技术
PCI Express,简称PCI-E,是计算机总线的一个重要分支,大量的设备使用PCI-E接入到计算机上,单个PCI-E卡接入后可呈现为一个设备,例如呈现为单个网卡,显卡。随着技术发展,单个PCI-E物理卡上功能逐步丰富,可使用ASIC(Application SpecificIntegrated Circuit)/FPGA(Field-Programmable Gate Array)或者软硬件配合的方式,在PCI-E卡上模拟出多级设备,模拟的设备还支持在运行过程按需增加和删除,设备类型和整个总线拓扑结构较为复杂。如图1所示为PCI-E拓扑架构图,PCI-E总线的架构可以形象化为:多组点对点相互连接的组件。大概有这些组成:Root Complex(RC)、多个Endpoint(PCI-E设备)、Switch(交换机)和PCI-E to PCI/PCI-X Bridge,各个成员之间总线即为PCIExpress。如图2所示PCI-E Switch内部结构图,整个计算机的PCI-E设备通过switch拓展组织成树形结构,从图中可以看出Switch扩展了PCI-E端口,其中,将靠近RC的端口叫做上游端口(upstream port),而分出来的其他端口,叫做下游端口(downstream port)。一个Switch只有一个上游端口,可以扩展出若干个下游端口;下游端口可以直接连接Endpoint,也可以连接Switch扩展出更多的PCI-E端口。
目前,在PCI-E卡模拟出多级switch、多个复杂Endpoint之后,如果重启host(服务器),则在重启的过程中bios(Basic Input Output System,基本输入输出系统)会枚举到所有已经创建出来的Endpoint,并为其分配bus(总线)。一般一个switch的upstream需要1个bus号,downstream需要1个bus号,每个downstream还要为下方将接入的设备预留至少一个bus号。也就是1个downstream的switch需要插槽支持3个bus号,32个downstream的switch需要插槽支持34个bus号。然而对于具体的服务器,由于硬件实现限制,某个插槽的可用bus号数量是有限的,当bus号数量无法满足接入卡的需求,可能导致bios无法启动。因此,对于形态固定的switch,需要放弃不支持的插槽,只能接在bus号资源充足的插槽上,往往对服务器的插槽有要求,实际服务器环境可能难以满足。
因此,如何控制整个拓扑结构中需要分配的总线数量,使拓扑结构中连接的交换机可适用于不同能力的插槽,满足实际应用环境的限制是目前有待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种PCI-E拓扑方法、装置、设备及存储介质,能够控制整个拓扑结构中需要分配的总线数量,使拓扑结构中连接的交换机可适用于不同能力的插槽,满足实际应用环境的限制。其具体方案如下:
第一方面,本申请公开了一种PCI-E拓扑方法,包括:
利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量;
基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量;
根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。
可选的,所述利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量,包括:
通过所述预设配置接口设置用于连接所述交换机的PCI-E设备数量,以确定出所述在PCI-E拓扑结构中交换机的下游端口数量。
可选的,所述基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量,包括:
若所述下游端口数量不超过预设阈值,则所述下游端口数量需要分配的目标总线的数量为所述下游端口数量加2;其中,所述预设阈值为所述交换机最多可配置的下游端口的数量值。
可选的,所述基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量,包括:
若所述下游端口数量超过所述预设阈值,则将所述第一级交换机连接第二级交换机,以确定出所述第一级交换机的总线数量为2;
基于所述下游端口的数量与所述预设阈值确定出所述第二级交换机的总线数量;
将所述第一级交换机的总线数量、所述第二级交换机的总线数量与所述下游端口数量进行求和,以得到所述下游端口数量需要分配的目标总线的数量。
可选的,所述基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量之后,还包括:
根据PCI-E规范中的FPB技术对分配的所述目标总线进行FPB使能配置,以控制所述目标总线的资源开销。
可选的,所述根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑之后,还包括:
获取服务器硬件针对不同的应用场景的许可证文件;
利用所述许可证文件对所述服务器硬件进行配置,并将配置后的服务器硬件与PCI-E卡进行连接,以使所述PCI-E卡配合不同的所述应用场景。
第二方面,本申请公开了一种PCI-E拓扑装置,包括:
下游端口数量配置模块,用于利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量;
目标总线数量确定模块,用于基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量;
PCI-E拓扑模块,用于根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。
可选的,所述目标总线数量确定模块,用于所述下游端口数量不超过预设阈值时,将所述下游端口数量需要分配的目标总线的数量为所述下游端口数量加2;其中,所述预设阈值为所述交换机最多可配置的下游端口的数量值。
第三方面,本申请公开了一种电子设备,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如前所述的PCI-E拓扑方法。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中所述计算机程序被处理器执行时实现如前所述的PCI-E拓扑方法。
本申请中,首先利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量;然后基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量;最后根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。可见,通过预设配置接口可以动态改变交换机的下游端口数量,因此支持用户自定义交换机的下游端口数量,从而限制需要的总线号资源,满足实际应用环境的限制,灵活适用于各类服务器的插槽,不会由于总线号不足导致基本输入输出系统无法启动。
相应的,申请还提供了与上述PCI-E拓扑方法相对应的PCI-E拓扑装置、设备及存储介质,均具有上述技术效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种PCI-E拓扑架构示意图;
图2为本申请公开的一种PCI-E Switch内部结构示意图;
图3为本申请公开的一种PCI-E拓扑方法流程图;
图4为本申请公开的一种呈现为一个交换机时的PCI-E拓扑示意图;
图5为本申请公开的一种应用FPB技术节省总线号消耗示意图;
图6为本申请公开的一种具体的PCI-E拓扑方法流程图;
图7为本申请公开的一种二级交换机的PCI-E拓扑示意图;
图8为本申请公开的一种PCI-E拓扑装置结构示意图;
图9为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,对于具体的服务器,由于硬件实现限制,某个插槽的可用bus号数量是有限的,当bus号数量无法满足接入卡的需求,可能导致bios无法启动。因此,对于形态固定的switch,需要放弃不支持的插槽,只能接在bus号资源充足的插槽上,往往对服务器的插槽有要求,实际服务器环境可能难以满足。
为此,本申请提供了一种PCI-E拓扑方案,能够控制整个拓扑结构中需要分配的总线数量,使拓扑结构中连接的交换机可适用于不同能力的插槽,满足实际应用环境的限制。
本发明实施例公开了一种PCI-E拓扑方法,参见图3所示,该方法包括:
步骤S11:利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量。
本申请实施例中,通常PCI-E指的是主板上的实际扩展槽,它接受基于PCI-E的扩展卡和扩展卡本身的类型,为了在实际应用的过程中使通过PCI-E卡拓扑结构中的交换机可以适用不同能力的插槽,在卡上提供配置接口,支持用户自定义交换机的下游端口数量,也即,利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量。
本申请实施例中,所述利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量,包括:通过所述预设配置接口设置用于连接所述交换机的PCI-E设备数量,也即,当下游端口连接PCI-E设备时,通过PCI-E设备的数量计算得到交换机的下游端口的数量。具体的,当连接不同的设备时可以提供不同的能力,如连接网络设备(交换机、路由器、防火墙、无线AP等)或终端设备(计算机、服务器、摄像头、网络打印机等),如此一来,控制提供PCI-E数量来提供不同的能力。
可以理解是,由于PCI-E卡在使用时,表面上是一张物理网卡,插入服务器后通过一定的配置,服务器端则会认为这个PCI-E插槽上插入多张网卡,就如同插槽上插了交换机,交换机接了多个设备或者再拓展出一级交换机,每个设备都有多个功能(function)或实现某些特定功能。当为PCI-E卡提供了预设配置接口对交换机的下游端口数量进行设置后,可以控制整个拓扑结构中所需的总线号数量,因此不会导致因总线号数量无法满足接入卡的需求而导致基本输入输出系统无法启动。
步骤S12:基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量。
在一种具体的实施方式中,当呈现为一个交换机时,需要使配置的下游端口数量不超过交换机可提供的下游端口数量,例如,如果每个交换机最多具有32个下游端口,所以当配置超过32个下游端口时,会需要多级交换机。此时需要的总线数量跟呈现的拓扑相关。
本申请实施例中,若所述下游端口数量不超过预设阈值,则所述下游端口数量需要分配的目标总线的数量为所述下游端口数量加2;其中,所述预设阈值为所述交换机最多可配置的下游端口的数量值。可以理解的是,当呈现为一个交换机时,配置下游端口的个数为n,则需要n+2的总线号,用户保证n+2不超过插槽限制即可。
如图4所示为一种呈现为一个交换机时的PCI-E拓扑示意图,可见,交换机的上游端口需要一个总线号,交换机代表一级总线号,连接在交换机上的设备都将分配一个总线号,因此保证n+2不超过插槽限制可以满足当前的PCI-E拓扑结构。需要指出的是,本申请实施例中连接的设备为普通设备,接入下游端口时只需要一个总线号。
本申请实施例中,PCI-E规范中的FPB技术可从另一个角度节省总线号的消耗,因此在本申请实施例配置总线号的基础上,进一步支持配置FPB使能,可更精细地控制总线号资源的开销。具体的,所述基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量之后,还包括:根据PCI-E规范中的FPB技术对分配的所述目标总线进行FPB使能配置,以控制所述目标总线的资源开销。需要指出的是,FPB是标准定义的技术,若使用FPB技术,所述下游端口数量需要分配的目标总线的数量为所述下游端口数量加1即可。
如图5所示为PCI-E基本规范的Rev.4.0Version 1.0,根据图中的配置,当启用FPB技术时,可以改变交换机内部的结构以进一步的控制总线号资源的开销。
步骤S13:根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。
本申请实施例中,控制了整个PCI-E拓扑中所需的总线号数量后,为创建的设备分配总线号实现PCI-E拓扑。另外,也可以让PCI-E卡配合不同的商业场景使用,例如同一硬件配合不同的许可证文件(license),提供不同的最大能力。具体的,获取服务器硬件针对不同的应用场景的许可证文件;利用所述许可证文件对所述服务器硬件进行配置,并将配置后的服务器硬件与PCI-E卡进行连接,以使所述PCI-E卡配合不同的所述应用场景。
本申请中,首先利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量;然后基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量;最后根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。可见,通过预设配置接口可以动态改变交换机的下游端口数量,因此支持用户自定义交换机的下游端口数量,从而限制需要的总线号资源,满足实际应用环境的限制,灵活适用于各类服务器的插槽,不会由于总线号不足导致基本输入输出系统无法启动。
本申请实施例公开了一种具体的PCI-E拓扑方法,参见图6所示,该方法包括:
步骤S21:利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量。
其中,关于上述步骤S21更加具体的处理过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
步骤S22:若所述下游端口数量超过所述预设阈值,则将所述第一级交换机连接第二级交换机,以确定出所述第一级交换机的总线数量为2;基于所述下游端口的数量与所述预设阈值确定出所述第二级交换机的总线数量。
本申请实施例中,如果利用预设配置接口配置的下游端口数量超过了每个交换机可以提供的下游端口数量,也即,所述下游端口数量超过所述预设阈值,则当前的交换机需要再拓展出一级交换机,此时将第一级交换机的下游端口只用于接交换机,第二级交换机的下游端口用于接设备,
本申请实施例中,由于第一级交换机连接第二级交换机,所以第一级交换机需要的总线号数量为第一季交换机上游端口分配的总线号和第一级交换机自身代表的一级总线号,因此所述第一级交换机的总线数量为2。
进一步的,需要确定出第二级连接了多少个交换机,第二级交换机的个数即为第二级交换机自身代表的二级总线号,利用二级总线号与连接的一级交换机下游端口分配的总线号及可以确定出第二级交换机的总线数量。也即,基于所述下游端口的数量与所述预设阈值确定出所述第二级交换机的总线数量。
步骤S23:将所述第一级交换机的总线数量、所述第二级交换机的总线数量与所述下游端口数量进行求和,以得到所述下游端口数量需要分配的目标总线的数量。
本申请实施例中,当确定处理第一级交换机的总线数量和第二级交换机的总线数量之后,与利用预设配置接口配置的下游端口数量进行求和,可以确定出整个PCI-E拓扑结构中需要的总线数量。
如图7所示为一个二级交换机的例子,第一级交换机只用于接交换机,第二级交换机的下游端口用于接设备。如果配置下游端口的数量n为64,则需要的总线数量为2+64/32*2+64=70。其中2为第一级交换机需要的总线数,64/32*2为第二级交换机需要的总线数,最后与配置的下游端口数量相加,代表连接的普通设备的总线数量与第一级交换机需要的总线数和第二级交换机需要的总线数确定出最终需要的总线数量。
可以理解的是,如果配置的下游端口数量不能确定出第二级交换机配置的总线数量为整数,则应该向上取整,也即在第一级交换机上再连接一个第二级交换机。
步骤S24:根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。
其中,关于上述步骤S24更加具体的处理过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本申请中,首先利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量;然后若所述下游端口数量超过所述预设阈值,则将所述第一级交换机连接第二级交换机,以确定出所述第一级交换机的总线数量为2;基于所述下游端口的数量与所述预设阈值确定出所述第二级交换机的总线数量;将所述第一级交换机的总线数量、所述第二级交换机的总线数量与所述下游端口数量进行求和,以得到所述下游端口数量需要分配的目标总线的数量;最后根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。可见,通过预设配置接口可以动态改变交换机的下游端口数量,因此支持用户自定义交换机的下游端口数量,从而限制需要的总线号资源,满足实际应用环境的限制,灵活适用于各类服务器的插槽,不会由于总线号不足导致基本输入输出系统无法启动。
相应的,本申请实施例还公开了一种PCI-E拓扑装置,参见图8所示,该装置包括:
下游端口数量配置模块11,用于利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量;
目标总线数量确定模块12,用于基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量;
PCI-E拓扑模块13,用于根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。
其中,关于上述各个模块更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
由此可见,通过本实施例的上述方案,首先利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量;然后基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量;最后根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。可见,通过预设配置接口可以动态改变交换机的下游端口数量,因此支持用户自定义交换机的下游端口数量,从而限制需要的总线号资源,满足实际应用环境的限制,灵活适用于各类服务器的插槽,不会由于总线号不足导致基本输入输出系统无法启动。
在一些具体的实施方式中,所述下游端口数量配置模块11,包括:
通过所述预设配置接口设置用于连接所述交换机的PCI-E卡数量,以确定出所述在PCI-E拓扑结构中交换机的下游端口数量。
在一些具体的实施方式中,所述目标总线数量确定模块12,包括:
第一目标总线的数量计算单元,用于若所述下游端口数量不超过预设阈值,则所述下游端口数量需要分配的目标总线的数量为所述下游端口数量加2;其中,所述预设阈值为所述交换机最多可配置的下游端口的数量值。
在一些具体的实施方式中,所述目标总线数量确定模块12,包括:
第一级交换机的总线数量确定单元,用于若所述下游端口数量超过所述预设阈值,则将所述第一级交换机连接第二级交换机,以确定出所述第一级交换机的总线数量为2;
第二级交换机的总线数量确定单元,用于基于所述下游端口的数量与所述预设阈值确定出所述第二级交换机的总线数量;
第二目标总线的数量计算单元,用于将所述第一级交换机的总线数量、所述第二级交换机的总线数量与所述下游端口数量进行求和,以得到所述下游端口数量需要分配的目标总线的数量。
在一些具体的实施方式中,所述PCI-E拓扑装置,还用于基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量之后,根据PCI-E规范中的FPB技术对分配的所述目标总线进行FPB使能配置,以控制所述目标总线的资源开销。
在一些具体的实施方式中,所述PCI-E拓扑模块13,还包括:
许可证文件获取模块,用于获取服务器硬件针对不同的应用场景的许可证文件;
PCI-E卡连接模块,用于利用所述许可证文件对所述服务器硬件进行配置,并将配置后的服务器硬件与PCI-E卡进行连接,以使所述PCI-E卡配合不同的所述应用场景。
进一步的,本申请实施例还公开了一种电子设备,图9是根据一示例性实施例示出的电子设备20结构图,图中内容不能认为是对本申请的使用范围的任何限制。
图9为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的PCI-E拓扑方法中的相关步骤。另外,本实施例中的电子设备20具体可以为计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222及数据223等,数据223可以包括各种各样的数据。存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的PCI-E拓扑方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机可读存储介质,这里所说的计算机可读存储介质包括随机存取存储器(Random Access Memory,RAM)、内存、只读存储器(Read-Only Memory,ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、磁碟或者光盘或技术领域内所公知的任意其他形式的存储介质。其中,所述计算机程序被处理器执行时实现前述PCI-E拓扑方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的PCI-E拓扑算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种PCI-E拓扑方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种PCI-E拓扑方法,其特征在于,包括:
利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量,以限制需要的总线号资源,不会由于总线号不足导致基本输入输出系统无法启动;
基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量;
根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。
2.根据权利要求1所述的PCI-E拓扑方法,其特征在于,所述利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量,包括:
通过所述预设配置接口设置用于连接所述交换机的PCI-E设备数量,以确定出所述在PCI-E拓扑结构中交换机的下游端口数量。
3.根据权利要求1所述的PCI-E拓扑方法,其特征在于,所述基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量,包括:
若所述下游端口数量不超过预设阈值,则所述下游端口数量需要分配的目标总线的数量为所述下游端口数量加2;其中,所述预设阈值为所述交换机最多可配置的下游端口的数量值。
4.根据权利要求3所述的PCI-E拓扑方法,其特征在于,所述基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量,包括:
若所述下游端口数量超过所述预设阈值,则将所述第一级交换机连接第二级交换机,以确定出所述第一级交换机的总线数量为2;
基于所述下游端口的数量与所述预设阈值确定出所述第二级交换机的总线数量;
将所述第一级交换机的总线数量、所述第二级交换机的总线数量与所述下游端口数量进行求和,以得到所述下游端口数量需要分配的目标总线的数量。
5.根据权利要求1所述的PCI-E拓扑方法,其特征在于,所述基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量之后,还包括:
根据PCI-E规范中的FPB技术对分配的所述目标总线进行FPB使能配置,以控制所述目标总线的资源开销。
6.根据权利要求1至5任一项所述的PCI-E拓扑方法,其特征在于,所述根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑之后,还包括:
获取服务器硬件针对不同的应用场景的许可证文件;
利用所述许可证文件对所述服务器硬件进行配置,并将配置后的服务器硬件与PCI-E卡进行连接,以使所述PCI-E卡配合不同的所述应用场景。
7.一种PCI-E拓扑装置,其特征在于,包括:
下游端口数量配置模块,用于利用预设配置接口确定在PCI-E拓扑结构中交换机的下游端口数量,以限制需要的总线号资源,不会由于总线号不足导致基本输入输出系统无法启动;
目标总线数量确定模块,用于基于所述下游端口数量和在所述PCI-E拓扑结构中第一级交换机的总线数量确定出所述下游端口数量需要分配的目标总线的数量;
PCI-E拓扑模块,用于根据所述目标总线的数量在所述交换机上创建设备以实现PCI-E拓扑。
8.根据权利要求7所述的PCI-E拓扑装置,其特征在于,所述目标总线数量确定模块,用于所述下游端口数量不超过预设阈值时,将所述下游端口数量需要分配的目标总线的数量为所述下游端口数量加2;其中,所述预设阈值为所述交换机最多可配置的下游端口的数量值。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至6任一项所述的PCI-E拓扑方法。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的PCI-E拓扑方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210868154.7A CN115114219B (zh) | 2022-07-22 | 2022-07-22 | 一种pci-e拓扑方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210868154.7A CN115114219B (zh) | 2022-07-22 | 2022-07-22 | 一种pci-e拓扑方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115114219A CN115114219A (zh) | 2022-09-27 |
CN115114219B true CN115114219B (zh) | 2023-10-20 |
Family
ID=83334226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210868154.7A Active CN115114219B (zh) | 2022-07-22 | 2022-07-22 | 一种pci-e拓扑方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115114219B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116095023B (zh) * | 2023-04-07 | 2023-06-16 | 珠海星云智联科技有限公司 | 数据处理单元的快速外设组件互联总线资源的自适应方法 |
CN116303148B (zh) * | 2023-05-17 | 2023-08-22 | 北京中科网威信息技术有限公司 | 多插槽设备网卡探测方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104285218A (zh) * | 2013-12-31 | 2015-01-14 | 华为技术有限公司 | 一种扩展PCIe总线域的方法和装置 |
CN113515478A (zh) * | 2021-08-03 | 2021-10-19 | 无锡众星微系统技术有限公司 | 一种PCIe Switch的系统扩展管理方法 |
CN114006875A (zh) * | 2020-07-13 | 2022-02-01 | 华为技术有限公司 | 扩展PCIe系统的方法、PCIe交换设备及PCIe系统 |
CN114265804A (zh) * | 2021-12-13 | 2022-04-01 | 中国科学院计算技术研究所 | 一种多根CPU下的PCIe交换芯片上、下游端口路由表构建方法 |
CN114745255A (zh) * | 2022-04-12 | 2022-07-12 | 深圳星云智联科技有限公司 | 硬件芯片、dpu、服务器、通信方法及相关装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8189573B2 (en) * | 2005-12-22 | 2012-05-29 | Intel Corporation | Method and apparatus for configuring at least one port in a switch to be an upstream port or a downstream port |
CN103023824B (zh) * | 2012-12-11 | 2015-08-26 | 华为技术有限公司 | 基于周边组件接口快速通道PCIe的数据传输系统及方法 |
WO2015045030A1 (ja) * | 2013-09-25 | 2015-04-02 | 株式会社日立製作所 | ドライブの増設可能な情報システムおよび該情報システムのバス番号割り当て方法 |
-
2022
- 2022-07-22 CN CN202210868154.7A patent/CN115114219B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104285218A (zh) * | 2013-12-31 | 2015-01-14 | 华为技术有限公司 | 一种扩展PCIe总线域的方法和装置 |
CN114006875A (zh) * | 2020-07-13 | 2022-02-01 | 华为技术有限公司 | 扩展PCIe系统的方法、PCIe交换设备及PCIe系统 |
CN113515478A (zh) * | 2021-08-03 | 2021-10-19 | 无锡众星微系统技术有限公司 | 一种PCIe Switch的系统扩展管理方法 |
CN114265804A (zh) * | 2021-12-13 | 2022-04-01 | 中国科学院计算技术研究所 | 一种多根CPU下的PCIe交换芯片上、下游端口路由表构建方法 |
CN114745255A (zh) * | 2022-04-12 | 2022-07-12 | 深圳星云智联科技有限公司 | 硬件芯片、dpu、服务器、通信方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115114219A (zh) | 2022-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115114219B (zh) | 一种pci-e拓扑方法、装置、设备及存储介质 | |
CN106557340B (zh) | 一种配置方法及装置 | |
US20140129819A1 (en) | Cloud cluster system and boot deployment method for the same | |
CN107666493B (zh) | 一种数据库配置方法及其设备 | |
CN113495732A (zh) | 服务器部署方法、装置、设备及可读存储介质 | |
CN112667228A (zh) | 应用程序的构建方法、装置及计算机设备 | |
EP3442166B1 (en) | Composing by network attributes | |
CN111124437A (zh) | 一种基于OpenStack的裸机资源配置信息获取方法、系统及设备 | |
CN114650223B (zh) | 一种Kubernetes集群的网络配置方法、装置及电子设备 | |
CN113747423B (zh) | 云手机状态同步方法、装置、设备、存储介质及程序产品 | |
CN111142885A (zh) | 一种eSIM设备管理方法、装置、设备及存储介质 | |
CN113377430B (zh) | 一种工业化插件的配置系统 | |
CN115221092A (zh) | Pci-e卡可分配的总线确定方法、装置、设备及存储介质 | |
CN116009847A (zh) | 代码生成方法、装置、电子设备及存储介质 | |
CN115543460A (zh) | 服务器主板的初始化方法及装置 | |
CN112965836B (zh) | 服务控制方法、装置、电子设备及可读存储介质 | |
CN113691403A (zh) | 拓扑节点配置方法、相关装置及计算机程序产品 | |
CN113220576B (zh) | 测试环境的管理方法、装置、设备以及存储介质 | |
CN114726719B (zh) | 网元操作系统部署方法、装置、电子设备及存储介质 | |
CN113961263B (zh) | 小程序分发方法、装置、设备和存储介质 | |
CN115242733B (zh) | 报文组播方法、组播网关、电子设备及存储介质 | |
CN112463677B (zh) | 一种有源光缆的连接装置、方法及计算机可读存储介质 | |
CN114615150B (zh) | 一种仿真网络生成方法和装置 | |
CN117172206B (zh) | 测试用例生成方法、装置、电子设备及存储介质 | |
CN116886463B (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 |