CN116401191A - 计算设备和pcie通道分配方法 - Google Patents

计算设备和pcie通道分配方法 Download PDF

Info

Publication number
CN116401191A
CN116401191A CN202310180243.7A CN202310180243A CN116401191A CN 116401191 A CN116401191 A CN 116401191A CN 202310180243 A CN202310180243 A CN 202310180243A CN 116401191 A CN116401191 A CN 116401191A
Authority
CN
China
Prior art keywords
pcie
slot
channels
pcie slot
controller
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
CN202310180243.7A
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.)
XFusion Digital Technologies Co Ltd
Original Assignee
XFusion Digital Technologies 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 XFusion Digital Technologies Co Ltd filed Critical XFusion Digital Technologies Co Ltd
Priority to CN202310180243.7A priority Critical patent/CN116401191A/zh
Publication of CN116401191A publication Critical patent/CN116401191A/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/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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • 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)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Systems (AREA)

Abstract

本申请实施例提供一种计算设备和PCIE通道分配方法,所述计算设备包括控制器、选通开关和至少一个PCIE插槽,其中,所述控制器通过所述选通开关与所述至少一个PCIE插槽连接;所述控制器用于提供M个PCIE通道,所述至少一个PCIE插槽对应的通道总数为N,所述M和所述N分别为正整数,所述N大于或等于所述M;所述控制器用于通过所述选通开关为所述至少一个PCIE插槽分配通道。上述计算设备中,控制器可以动态调整PCIE插槽可以分配得到的通道数量,使得PCIE插槽可以接入不同规格的PCIE设备,提高了计算设备的应用灵活性。

Description

计算设备和PCIE通道分配方法
技术领域
本申请涉及计算设备领域,尤其涉及一种计算设备和PCIE通道分配方法。
背景技术
计算设备可以提供固定总数的高速串行计算机扩展总线标准(PeripheralComponent Interconnect Express,PCIE)通道(Lane),并可以通过PCIE通道连接PCIE设备。例如,计算设备可以为计算机、或服务器等;PCIE设备可以为网卡、存储卡、数据卡、图像计算卡、以及数据加速卡等。
相关技术中,可以根据计算设备中PCIE通道的总数,为计算设备设计固定规格的PCIE插槽,以使计算设备可以通过PCIE插槽连接固定规格的PCIE设备。例如,若计算设备中PCIE通道的总数为32,可以为计算设备设计一个16通道(X16)插槽、一个8通道(X8)插槽、以及两个4通道(X4)插槽;这样,计算设备可以连接一个16通道的PCIE设备、一个8通道的PCIE设备、以及两个4通道的PCIE设备。然而,若计算设备需要连接其他规格的PCIE设备时,需要重新配置计算设备PCIE插槽的规格,使得计算设备的应用灵活性较差。
发明内容
本申请实施例提供了一种计算设备和PCIE通道分配方法,所述计算设备可以根据PCIE插槽上插接的PCIE设备的规格,调整PCIE插槽可以分配得到的PCIE通道,以支撑PCIE插槽可以接入不同规格的PCIE设备,使得计算设备的应用灵活性较高。
第一方面,本申请实施例提供一种计算设备,所述计算设备包括控制器、选通开关和至少一个PCIE插槽,其中,
所述控制器通过所述选通开关与所述至少一个PCIE插槽连接;
所述控制器用于提供M个PCIE通道,所述至少一个PCIE插槽对应的通道总数为N,所述M和所述N分别为正整数,所述N大于或等于所述M;
所述控制器用于通过所述选通开关为所述至少一个插槽分配PCIE通道。
上述技术方案中,计算设备包括控制器、选通开关和至少一个PCIE插槽,选通开关可以分别与控制器和至少一个PCIE插槽连接。控制器可以提供M个通道,M小于或等于至少一个插槽对应的通道总数。控制器可以动态调整PCIE插槽可以分配得到的PCIE通道数量,使得PCIE插槽可以接入不同规格的PCIE设备,提高了计算设备的应用灵活性。
一种可能的实现方式中,针对任意一个插槽,所述插槽对应2K个通道,所述K为大于或等于1的整数;
所述选通开关通过K条选通线与所述插槽连接,其中,所述选通开关用于将所述K条选通线中的至少一条选通线设置为导通状态。
上述技术方案中,选通开关可以将至少一条选通线设置为导通状态,以实现将控制器提供的PCIE通道分配给PCIE插槽的目的。
一种可能的实现方式中,第i条选通线用于使得所述PCIE插槽向对应的外接设备提供2i个PCIE通道,所述i为大于或等于1且小于或等于K的整数。
上述技术方案中,不同的选通线导通时,控制器向PCIE插槽分配的通道数不同。通过上述方案可以根据实际需要,将不同的选通线设置为导通状态,实现为PCIE插槽灵活分配通道的目的,以使PCIE插槽可以接入不同规格的PCIE设备,从而使得计算设备的应用灵活性较高。
一种可能的实现方式中,所述控制器分别与所述选通开关和所述至少一个PCIE插槽连接,所述选通开关还与所述至少一个PCIE插槽连接;
所述控制器用于检测所述至少一个PCIE插槽的在位状态以及用于获取所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量;所述在位状态用于指示所述PCIE插槽中是否插设PICE设备;
所述控制器还用于根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制所述选通开关的状态,为所述至少一个目标PCIE插槽分配PCIE通道;所述目标PCIE插槽为插设有PCIE设备的插槽。
上述技术方案中,控制器可以获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量,并根据PCIE设备所需的通道数量为对应的PCIE插槽分配PCIE通道,以支撑PCIE插槽可以接入不同规格的PCIE设备,使得计算设备的应用灵活性较高。
一种可能的实现方式中,所述计算设备还包括基板管理控制器BMC,所述BMC分别与所述至少一个PCIE插槽、所述控制器和所述选通开关连接,其中,
所述BMC用于检测所述至少一个PCIE插槽的在位状态以及用于获取所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量;所述在位状态用于指示所述PCIE插槽中是否插设PICE设备;
所述BMC还用于根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制所述选通开关的状态,并根据所述至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量控制所述控制器为所述至少一个目标PCIE插槽分配PCIE通道;所述目标PCIE插槽为插设有PCIE设备的插槽。
上述技术方案中,BMC可以检测至少一个PCIE插槽的在位状态以及获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量;可以根据PCIE设备所需的通道数量控制选通开关的状态;并可以向控制器发送PCIE设备所需的通道数量,以使控制器可以为PCIE插槽分配PCIE通道。通过上述设置,可以支撑PCIE插槽接入不同规格的PCIE设备,使得计算设备的应用灵活性较高。
一种可能的实现方式中,所述计算设备还包括可编程逻辑器件CPLD;所述CPLD分别与所述至少一个PCIE插槽、所述控制器和所述选通开关连接,其中,
所述CPLD用于检测所述至少一个PCIE插槽的在位状态以及用于获取所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量;所述在位状态用于指示所述PCIE插槽中是否插设PICE设备;
所述CPLD还用于根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制所述选通开关的状态,并根据所述至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量控制所述控制器为所述至少一个目标PCIE插槽分配PCIE通道;所述目标PCIE插槽为插设有PCIE设备的插槽。
上述技术方案中,CPLD可以检测至少一个PCIE插槽的在位状态以及获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量;可以根据PCIE设备所需的通道数量控制选通开关的状态;并可以向控制器发送PCIE设备所需的通道数量,以使控制器可以为PCIE插槽分配PCIE通道。通过上述设置,可以支撑PCIE插槽接入不同规格的PCIE设备,使得计算设备的应用灵活性较高。
第二方面,本申请实施例提供了一种PCIE通道分配方法,应用于计算设备,所述计算设备包括控制器、选通开关和至少一个PCIE插槽,所述控制器通过所述选通开关与所述至少一个PCIE插槽连接;所述控制器用于提供M个PCIE通道,M小于或等于所述至少一个PCIE插槽对应的通道总数,所述方法包括:
所述控制器确定为每个PCIE插槽分配的PCIE通道的数量;
所述控制器根据为每个PCIE插槽分配的PCIE通道的数量,通过所述选通开关为所述至少一个PCIE插槽分配PCIE通道。
上述技术方案中,控制器可以动态调整PCIE插槽可以分配得到的PCIE通道数量,使得PCIE插槽可以接入不同规格的PCIE设备,提高了计算设备的应用灵活性。
一种可能的实现方式中,所述确定为每个PCIE插槽分配的PCIE通道的数量,包括:
所述控制器根据所述至少一个PCIE插槽的在位状态、以及所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量,确定为每个PCIE插槽分配的PCIE通道的数量。
上述技术方案中,控制器可以确定需要为每个PCIE插槽分配的PCIE通道的数量,以便于为相应的PCIE插槽分配PCIE通道。
一种可能的实现方式中,所述计算设备还包括有BMC,所述BMC分别与所述选通开关、所述控制器和所述至少一个PCIE插槽连接;所述方法还包括:
所述BMC根据所述至少一个PCIE插槽的在位状态、以及所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量,确定为每个PCIE插槽分配的PCIE通道的数量;
所述控制器确定为每个PCIE插槽分配的PCIE通道的数量,包括:
所述控制器从所述BMC获取为每个PCIE插槽分配的PCIE通道的数量。
上述技术方案中,控制器可以直接从BMC获取为每个PCIE插槽分配的PCIE通道的数量,使得控制器的开销较小。
一种可能的实现方式中,根据所述至少一个PCIE插槽的在位状态、以及所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量,确定为每个目标PCIE插槽分配的PCIE通道的数量,包括:
在所述至少一个PCIE插槽中确定至少一个目标PCIE插槽,所述目标PCIE插槽的在位状态为在位;
根据所述至少一个目标PCIE插槽的插槽信息,确定为所述目标PCIE插槽分配的PCIE通道的数量。
上述技术方案中,可以根据至少一个目标PCIE插槽的插槽信息,确定为所述PCIE插槽分配的PCIE通道的数量,实现了确定为每个PCIE插槽分配的PCIE通道的数量的目的。
一种可能的实现方式中,所述根据所述至少一个目标PCIE插槽的插槽信息,确定为所述目标PCIE插槽分配的PCIE通道的数量,包括:
获取所述至少一个目标PCIE插槽上插设的至少一个PCIE设备所需的PCIE通道的数量之和;
若所述数量之和小于或等于所述M,则根据所述至少一个PCIE设备所需的PCIE通道的数量,确定为所述目标PCIE插槽分配的PCIE通道的数量。
上述技术方案中,可以根据每个目标PCIE插槽所需的PCIE通道数量,为其分配相应的PCIE通道。
一种可能的实现方式中,若所述数量之和大于所述M,则根据所述M和所述至少一个外接设备所需的PCIE通道的数量,确定为所述目标PCIE插槽分配的PCIE通道的数量。
一种可能的实现方式中,所述根据所述M和所述至少一个外接设备所需的PCIE通道的数量,为所述至少一个目标PCIE插槽分配PCIE通道,包括:
获取所述至少一个PCIE设备的的优先级;
按照优先级从高到低的顺序,依次为至少一个目标PCIE插槽分配其所需的PCIE通道的数量,为所述至少一个目标PCIE插槽分配的PCIE通道总数量等于所述M。
一种可能的实现方式中,所述根据所述M和所述至少一个外接设备所需的PCIE通道的数量,为所述至少一个目标PCIE插槽分配PCIE通道,包括:
获取所述至少一个目标PCIE插槽的优先级及所述至少一个目标PCIE插槽最少分配的PCIE通道的数量;
根据所述至少一个目标PCIE插槽的优先级及所述至少一个目标PCIE插槽最少分配的PCIE通道的数量,为所述至少一个目标PCIE插槽分配PCIE通道,其中,为所述至少一个目标PCIE插槽分配的PCIE通道总数量等于所述M。
一种可能的实现方式中,所述至少一个目标PCIE插槽所需的最少PCIE通道数量之和为N;所述根据所述至少一个PCIE插槽的优先级、以及每个目标PCIE插槽所需的最少PCIE通道数量,为所述至少一个目标PCIE插槽分配PCIE通道,包括:
在N小于M时,按照每个目标PCIE插槽所需的最少PCIE通道数量,将N个PCIE通道分配至所述至少一个目标PCIE插槽,并按照优先级从高到低的顺序、以及每个目标PCIE插槽所需的剩余PCIE通道数量,将N-M个PCIE通道分配至所述至少一个目标PCIE插槽;
在N大于或等于M时,按照优先级从高到低的顺序、以及每个目标PCIE插槽所需的最少PCIE通道数量,为所述至少一个目标PCIE插槽分配PCIE通道。
上述技术方案中,若至少一个目标PCIE插槽所需的PCIE通道总数小于控制器提供的PCIE通道总数,可以根据至少一个PCIE插槽的优先级、以及每个目标PCIE插槽所需的最少PCIE通道数量,为至少一个目标PCIE插槽分配PCIE通道。实现了确定为每个PCIE插槽分配的PCIE通道的数量的目的。
一种可能的实现方式中,所述控制器确定为每个PCIE插槽分配的PCIE通道的数量,包括:
监控所述至少一个PCIE插槽的在位状态,在所述在位状态改变后,所述控制器确定为每个PCIE插槽分配的PCIE通道的数量。
上述技术方案中,控制器可以实时根据至少一个PCIE插槽的在位状态,动态调节为至少一个PCIE插槽分配的PCIE通道的数量,使得计算设备的应用灵活性较高。
第三方面,本申请实施例提供了一种PCIE通道分配方法,应用于计算设备,所述计算设备包括控制器、BMC、选通开关和至少一个PCIE插槽,所述控制器通过所述选通开关与所述至少一个PCIE插槽连接;所述BMC分别与所述至少一个PCIE插槽、所述控制器和所述选通开关连接;所述控制器用于提供M个PCIE通道,M小于或等于所述至少一个PCIE插槽对应的通道总数,所述方法包括:
所述BMC获取所述至少一个PCIE插槽的在位状态;
在所述至少一个PCIE插槽中存在PCIE插槽的在位状态发生变化时,所述BMC获取所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量,所述在位状态用于指示所述PCIE插槽中是否插设PICE设备;
所述BMC根据所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量,确定为每个PCIE插槽分配的PCIE通道的数量;
所述BMC根据为每个PCIE插槽分配的PCIE通道的数量,控制每个PCIE插槽对应的选通开关;
所述BMC向控制器发送为每个PCIE插槽分配的PCIE通道的数量;
所述控制器根据为每个PCIE插槽分配的PCIE通道的数量,为所述至少一个PCIE插槽分配PCIE通道。
上述技术方案中,BMC可以检测至少一个PCIE插槽的在位状态以及获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量;可以根据PCIE设备所需的通道数量控制选通开关的状态;并可以向控制器发送PCIE设备所需的通道数量,以使控制器可以为PCIE插槽分配PCIE通道。通过上述设置,可以支撑PCIE插槽接入不同规格的PCIE设备,使得计算设备的应用灵活性较高。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被计算机执行时实现第二方面或第三方面中任一项所述的方法。
上述技术方案中,控制器可以动态调整计算设备中至少一个PCIE插槽可以分配得到的PCIE通道数量,使得PCIE插槽可以接入不同规格的PCIE设备,提高了计算设备的应用灵活性。
第五方面,本申请实施例提供一种算机程序产品,包括计算机程序,所述计算机程序被计算机执行时实现第二方面或第三方面中任一项所述的方法。
上述技术方案中,控制器可以动态调整计算设备中至少一个PCIE插槽可以分配得到的PCIE通道数量,使得PCIE插槽可以接入不同规格的PCIE设备,提高了计算设备的应用灵活性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一种计算设备的架构示意图;
图2为一种通过PCIE插槽接入PCIE设备的示意图;
图3为本申请实施例提供的一种通过PCIE插槽接入PCIE设备的示意图;
图4为本申请实施例提供的一种计算设备的结构示意图;
图5为本申请实施例提供的另一种计算设备的结构示意图;
图6为本申请实施例提供的一种控制器检测PCIE插槽的在位状态的示意图;
图7为本申请实施例提供的又一种计算设备的结构示意图;
图8为本申请实施例提供的一种BMC检测PCIE插槽的在位状态的示意图;
图9为本申请实施例提供的又一种计算设备的结构示意图;
图10为本申请实施例提供的一种PCIE通道分配方法的流程示意图;
图11为本申请实施例提供的另一种PCIE通道分配方法的流程示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
为便于理解,首先结合图1对本申请实施例涉及的计算设备进行说明。
图1为一种计算设备的架构示意图。计算设备100包括但不限于是服务器、服务器集群、膝上型计算机、台式计算机、移动电话、智能手机、平板电脑、多媒体播放器、电子阅读器、智能车载设备、智能家电、人工智能设备、穿戴式设备、物联网设备、或虚拟现实/增强现实/混合现实设备等。
如图1所示,该计算设备100包括:PCIE插槽101、控制器102和基板管理控制器(Baseboard Management Controller,BMC)103。控制器102分别与PCIE插槽101和BMC103连接。BMC103还与PCIE插槽101连接。控制器102可以为PCIE插槽101配置PCIE通道资源,以供PCIE插槽101插接PCIE设备。
PCIE插槽101上可以插设PCIE设备。例如,PCIE设备包括但不限于是网卡、磁盘阵列(redundant arrays of independent disks,RAID)卡、显卡、存储卡、数据卡、图像计算卡以及加速卡等。应该理解的是,PCIE插槽101的数量可以为一个或多个,本申请实施例中不做限定。
需要说明的是,多个PCIE插槽101可以为相同规格的PCIE插槽,或者多个PCIE插槽101可以为不同规格的PCIE插槽。例如,PCIE插槽101包括但不限于为2通道PCIE插槽、4通道PCIE插槽、8通道PCIE插槽、或者16通道PCIE插槽等。
控制器102可以为计算设备100中、可以提供PCIE通道资源的组件。例如,控制器可以为中央处理器(Central Processing Unit,CPU)、或者南桥(Platform Controller Hub,PCH)等。
控制器102可以提供固定总数的PCIE通道,并向PCIE插槽101分配PCIE通道,以支撑PCIE插槽101接入相应规格的PCIE设备。
BMC103可以为计算设备100的管理模块,BMC 103可以在计算设备100中执行组件管理任务。例如,组件管理任务可以为上下电控制、温度监测等。
需要说明的是,在不同的计算设备中,对BMC有不同的称呼。例如,BMC在一些计算设备中称为BMC,BMC在另一些计算设备中称为iLO,BMC在另一些计算设备中还称为iDRAC。BMC、iLO或者iDRAC,都可以理解为是本发明实施例中的BMC。
需要说明的是,本申请实施例示意的计算设备100的结构并不构成对计算设备100的具体限定。在一些实施例中,计算设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
下面,结合图2,对PCIE插槽101可以接入的PCIE设备进行说明。
图2为一种通过PCIE插槽接入PCIE设备的示意图。请参见图2,计算设备100包括控制器102、以及5个PCIE插槽。PCIE插槽1011为16通道PCIE插槽,PCIE插槽1012为8通道PCIE插槽,PCIE插槽1013为8通道PCIE插槽,PCIE插槽1014为4通道PCIE插槽,PCIE插槽1015为4通道PCIE插槽。
控制器102可以提供的PCIE通道总数为40。
相应的,5个PCIE插槽对应的PCIE通道的总数为40。其中,16通道PCIE插槽可以接入16通道的PCIE设备、8通道PCIE插槽可以接入8通道的PCIE设备、以及4通道PCIE插槽可以接入4通道的PCIE设备。
需要说明的是,上述5个PCIE插槽可以在计算设备100设计阶段进行配置。计算设备100可以通过上述5个PCIE插槽接入1个16通道的PCIE设备、2个8通道的PCIE设备、以及2个4通道的PCIE设备。然而,若计算设备100需要接入其他规格的PCIE设备,需要重新配置计算设备100的PCIE插槽。例如,若计算设备100要接入2个16通道的PCIE设备,需要重新为计算设备100配置2个16通道PCIE插槽。导致计算设备100的应用灵活性较差。
为解决上述技术问题,相关技术中可以为计算设备100配置多个不同规格的PCIE插槽板,每个PCIE插槽板上可以包括不同规格的多个PCIE插槽。实际应用过程中,可以根据需要接入的PCIE设备的规格,从多个PCIE插槽板中选择任意一个PCIE插槽板工作。
示例性的,假设控制器102可以提供的PCIE通道总数为40。计算设备100配置有2个不同的PCIE插槽板。其中,PCIE插槽板1可以包括1个16通道PCIE插槽、2个8通道PCIE插槽、以及2个4通道PCIE插槽;PCIE插槽板2可以包括2个16通道PCIE插槽、以及2个4通道PCIE插槽。若计算设备100需要接入1个16通道的PCIE设备,可以选择通过PCIE插槽板1接入相应的PCIE设备;若计算设备100需要接入2个16通道的PCIE设备,可以选择通过PCIE插槽板2接入相应的PCIE设备。
然而,上述方法中,针对同一个计算设备100,需要配置大量的PCIE插槽板,以接入不同规格的多个PCIE设备,导致计算设备100仍存在应用灵活性较差的问题。
有鉴于此,本申请实施例提供了一种计算设备,可以通过冗余PCIE插槽、以及选通开关的设置,提高计算设备的应用灵活性。
下面,结合图3,以控制器提供40个PCIE通道为例,对本申请实施例提供的计算设备接入PCIE设备的方式进行说明。
图3为本申请实施例提供的一种通过PCIE插槽接入PCIE设备的示意图。请参见图3,计算设备100包括控制器102、选通开关104、以及5个PCIE插槽。PCIE插槽1011为16通道PCIE插槽,PCIE插槽1012为16通道PCIE插槽,PCIE插槽1013为8通道PCIE插槽,PCIE插槽1014为8通道PCIE插槽,PCIE插槽1015为8通道PCIE插槽。
选通开关104可以分别与控制器102、以及5个PCIE插槽连接。
上述计算设备100中,5个PCIE插槽对应的PCIE通道总数大于控制器102提供的PCIE通道总数。实际应用过程中,可以将控制器102提供的PCIE通道分配给5个PCIE插槽中任意一个或者多个PCIE插槽,以使分配有PCIE通道的PCIE插槽可以接入PCIE设备。
针对任意一个PCIE插槽,控制器102可以根据PCIE插槽上插设的PCIE设备的规格、通过选通开关104为PCIE插槽分配相应的PCIE通道。
示例性的,若任意一个16通道PCIE插槽上插设有16通道的PCIE设备,则控制器102可以通过选通开关104为该PCIE插槽分配16个PCIE通道;若任意一个16通道PCIE插槽上插设有8通道的PCIE设备,则控制器102可以通过选通开关104为该PCIE插槽分配8个PCIE通道。
通过上述设置,该计算设备100可以根据实际需要,同时接入2个16通道的PCIE设备、或者5个8通道的PCIE设备,使得计算设备100的应用灵活性较高。
下面以具体的实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图4为本申请实施例提供的一种计算设备的结构示意图。请参见图4,计算设备100可以包括控制器102、选通开关104和至少一个PCIE插槽。例如,至少一个PCIE插槽可以包括PCIE插槽1011、PCIE插槽1012和PCIE插槽1013。
本实施例中,选通开关104分别与控制器102和至少一个PCIE插槽连接。
选通开关104可以为具有切换功能的开关。例如,选通开关104可以为数据选择器(multiplexer,MUX)等。
控制器102可以为具有PCIE通道资源的组件。例如,控制器102可以为CPU、或者PCH等。
可选的,在一些实施例中,还可以采用非易失性存储器(Non-Volatile MemoryExpress,NVME)接口、开放计算项目(open computing project,OCP)接口、或者M2接口替换PCIE插槽。应该理解的是,插槽表示的接口不同时,控制器102可以提供的通道资源也不同。例如,插槽为OPC接口时,控制器102可以为具有OPC通道资源的组件。
选通开关104可以基于有线、或者无线的方式,分别与控制器102和至少一个PCIE插槽连接。
本实施例中,控制器102用于提供M个PCIE通道,至少一个PCIE插槽对应的通道总数为N,M和N分别为正整数,N大于或等于M。
PCIE插槽的数量可以为一个或多个。若PCIE插槽的数量为一个,该一个PCIE插槽对应的通道数(N)大于或者等于控制器102提供的通道总数(M);若PCIE插槽的数量为多个,该多个PCIE插槽对应的通道总数(N)大于或者等于控制器102提供的通道总数(M)。
示例性的,假设控制器102提供的PCIE通道总数为40,即M等于40,则至少一个PCIE插槽对应的PCIE通道总数大于或者等于40,即N大于或者等于40。
本实施例中,控制器102用于通过选通开关104为至少一个PCIE插槽分配通道。
针对任意一个PCIE插槽,控制器102可以根据PCIE插槽上插设的PCIE设备的规格,通过选通开关104为该PCIE插槽分配通道。
示例性的,假设一个8通道PCIE插槽上插接一个8通道的PCIE设备,则控制器102可以通过选通开关104为该PCIE插槽分配8个PCIE通道;假设一个8通道PCIE插槽上插接一个4通道的PCIE设备,则控制器102可以通过选通开关104为该PCIE插槽分配4个PCIE通道。
本实施例中,针对任意一个PCIE插槽,PCIE插槽对应2K个通道,K为大于或等于1的整数;选通开关104通过K条选通线与PCIE插槽连接,其中,选通开关104用于将K条选通线中的至少一条选通线设置为导通状态。
具体而言,针对任意一个PCIE插槽,PCIE插槽与选通开关104之间通过至少一条选通线连接。选通开关104可以将至少一条选通线中至少一条选通线设置为导通状态,以通过该选通线将控制器102提供的PCIE通道分配给该PCIE插槽。
示例性的,若K等于3,则PCIE插槽可以对应8个通道。选通开关104可以通过3条选通线与PCIE插槽连接,选通开关104可以将3条选通线中至少一条选通线设置为导通状态。
进一步的,第i条选通线用于使得该PCIE插槽向对应的PCIE设备提供2i个通道,i为大于或等于1且小于或等于K的整数。
示例性的,若K等于3,选通开关104将第1条选通线设置为导通状态时,PCIE插槽可以向对应的PCIE设备提供2个通道,此时该PCIE插槽上可以插接2通道的PCIE设备;选通开关104将第2条选通线设置为导通状态时,PCIE插槽可以向对应的PCIE设备提供4个通道,此时PCIE插槽上可以插接4通道的PCIE设备;选通开关104将第3条选通线设置为导通状态时,PCIE插槽可以向对应的PCIE设备提供8个通道,此时该PCIE插槽上可以插接8通道的PCIE设备。
需要说明的是,若PCIE插槽上未插接PCIE设备,选通开关104可以将所有选通线设置为断开状态。
本实施例提供的计算设备100包括控制器102、选通开关104和至少一个PCIE插槽,其中,选通开关104分别与控制器102和至少一个PCIE插槽连接;控制器102用于提供M个PCIE通道,至少一个PCIE插槽对应的PCIE通道总数为N,M和N分别为正整数,N大于或等于M;控制器102用于通过选通开关104为至少一个PCIE插槽分配通道。通过上述设置,控制器102可以根据PCIE插槽上插接的PCIE设备的规格,灵活为PCIE插槽分配PCIE通道、动态调整PCIE插槽可以分配得到的PCIE通道,以支撑PCIE插槽可以接入不同规格的PCIE设备,使得计算设备100的应用灵活性较高。
在图4实施例的基础上,控制器102可以获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量,以为至少一个PCIE插槽分配PCIE通道。
控制器获取每个PCIE插槽上插设的PCIE设备所需的通道数量的过程是一致的,下面,以任意一个PCIE插槽为例,对上述过程进行说明。
本实施例中,针对任意一个PCIE插槽;控制器102具体用于:获取PCIE插槽上插设的PCIE设备所需的通道数量,并根据PCIE设备所需的通道数量,为相应的PCIE插槽分配PCIE通道。
本实施例中,控制器102可以根据PCIE设备所需的PCIE通道数量,更新对应PCIE插槽的配置文件,以实现向该PCIE插槽分配通道的目的。例如,控制器102可以通过基本输入输出系统(Basic Input Output System,BIOS)更新PCIE插槽的配置文件。
示例性的,假设某个PCIE插槽对应的PCIE通道总数为16,该插槽上未插设PCIE设备,控制器102可以通过BIOS在配置文件中将该PCIE插槽的通道数更新为0,即不向该PCIE插槽分配PCIE通道。
假设某个PCIE插槽对应的PCIE通道总数为16,若该PCIE插槽上插设有16通道的PCIE设备,控制器102可以通过BIOS在配置文件中将该PCIE插槽的PCIE通道数更新为16,即向该PCIE插槽分配16个PCIE通道;若该PCIE插槽上插设有8通道的PCIE设备,控制器102可以通过BIOS在配置文件中将该PCIE插槽的PCIE通道数更新为8,即向该插槽分配8个PCIE通道。
本实施例提供的计算设备100中,控制器102可以获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量,并根据PCIE设备所需的通道数量为对应的PCIE插槽分配PCIE通道,以支撑PCIE插槽可以接入不同规格的PCIE设备,使得计算设备100的应用灵活性较高。
在上述任意一个实施例的基础上,控制器102获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量,至少可以包括如下两种方式:
方式1、控制器102可以直接检测至少一个PCIE插槽的在位状态、以及从至少一个PCIE插槽获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量。
该方式中,控制器102可以直接与至少一个PCIE插槽连接,无需其他组件的介入,使得控制器102获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量的效率较高。
方式2、控制器102可以从BMC中获取至少一个PCIE插槽的在位状态、以及至少一个PCIE插槽上插设的PCIE设备所需的通道数量。
该方式中,计算设备100可以包括BMC,BMC可以分别与至少一个PCIE插槽和控制器102连接。BMC可以采集至少一个PCIE插槽上插设的PCIE设备所需的通道数量,并可以向控制器102发送至少一个PCIE插槽上插设的PCIE设备所需的通道数量,使得控制器102的开销较小。
方式3、控制器102可以从可编程逻辑器件(Complex Programmable LogicDevice,CPLD)中获取至少一个PCIE插槽的在位状态、以及至少一个PCIE插槽上插设的PCIE设备所需的通道数量。
该方式中,计算设备100可以包括CPLD,CPLD可以分别与至少一个PCIE插槽和控制器102连接。CPLD可以采集至少一个PCIE插槽上插设的PCIE设备所需的通道数量,并可以向控制器102发送至少一个PCIE插槽上插设的PCIE设备所需的通道数量,使得控制器102的开销较小。
下面,结合图5-图6对上述方式1进行详细说明。
图5为本申请实施例提供的另一种计算设备的结构示意图。请参见图5,控制器102分别与选通开关104和至少一个PCIE插槽连接,选通开关104还与至少一个PCIE插槽连接。
本实施例中,控制器102用于检测至少一个PCIE插槽的在位状态以及用于获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量。
在位状态用于指示PCIE插槽中是否插设PICE设备。例如,PCIE插槽中插设有PCIE设备时,在位状态可以为在位;PCIE插槽中未插设PCIE设备时,在位状态可以为未在位。
一种可能的实现方式中,计算设备100上电后,控制器102可以依次轮询对每一个PCIE插槽进行检测、获取PCIE插槽的在位状态以及PCIE插槽上插设的PCIE设备所需的通道数量,以便于向该PCIE插槽分配PCIE通道。
示例性的,计算设备100上电后,假设控制器102检测到某个PCIE插槽上未插设PCIE设备,则控制器102可以不向该PCIE插槽分配PCIE通道;假设控制器102检测到某个16通道PCIE插槽上插设有8通道的PCIE设备,则控制器102可以向该PCIE插槽分配8个PCIE通道。
另一种可能的实现方式中,计算设备100运行过程中,控制器102可以周期性对每一个PCIE插槽进行检测,并在PCIE插槽上插接的PCIE设备更换时,根据最新的PCIE设备所需的通道数量为该PCIE插槽分配PCIE通道。
示例性的,计算设备100运行过程中,假设控制器102在周期性检测中检测到某个PCIE插槽上插接的PCIE设备更换,且更换后的PCIE设备为16通道的PCIE设备,则控制器102可以向该PCIE插槽分配16个PCIE通道。
本实施例中,控制器102还用于根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制选通开关104的状态。也就是说,控制器102还用于根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,指示选通开关104将K条选通线中的至少一条选通线设置为导通状态。
其中,目标PCIE插槽为插设有PCIE设备的插槽。
具体而言,控制器102获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量后,可以根据PCIE设备所需的通道数量向选通开关104发送指示信息,以指示选通开关104将K条选通线中的一条选通线设置为导通状态。例如,若某个PCIE设备所需的PCIE通道数量为4。则控制器102可以向选通开关104发送指示信息,以指示选通开关104将用于向该PCIE设备提供4个通道的选通线设置为导通状态。
示例性的,假设某PCIE插槽对应16个通道,选通开关104通过4条选通线与该PCIE插槽连接。第1条选通线导通时,PCIE插槽可以向PCIE设备提供2个通道,第2条选通线导通时,PCIE插槽可以向PCIE设备提供4个通道,第3条选通线导通时,PCIE插槽可以向PCIE设备提供8个通道,第4条选通线导通时,PCIE插槽可以向PCIE设备提供16个通道。若控制器102检测到该PCIE插槽的在位状态为在位、且该PCIE插槽上插设的PCIE设备所需的通道数量为8。则控制器102可以向选通开关发104送指示信息,以指示选通开关104将第3条选通线设置为导通状态。
本实施例提供的计算设备100中,控制器102可以检测至少一个PCIE插槽的在位状态以及获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量,还可以根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制选通开关104的状态,为至少一个目标PCIE插槽分配PCIE通道,以支撑PCIE插槽可以接入不同规格的PCIE设备,使得计算设备100的应用灵活性较高。
下面,结合图6,通过具体的示例,对图5实施例所示的技术方案进行详细说明。
图6为本申请实施例提供的一种控制器检测PCIE插槽的在位状态的示意图。请参见图6,计算设备100包括控制器102、选通开关104和5个PCIE插槽。
控制器102可以提供40个PCIE通道。
PCIE插槽1011为16通道PCIE插槽,PCIE插槽1012为16通道PCIE插槽,PCIE插槽1013为8通道PCIE插槽,PCIE插槽1014为8通道PCIE插槽,PCIE插槽1015为8通道PCIE插槽。
选通开关104分别与控制器102、以及5个PCIE插槽连接。
控制器102还分别与5个PCIE插槽连接。
选通开关104与PCIE插槽1011/PCIE插槽1012通过4条选通线连接(图中未示出),第1条选通线导通时,PCIE插槽1011/PCIE插槽1012可以向PCIE设备提供2个通道;第2条选通线导通时,PCIE插槽1011/PCIE插槽1012可以向PCIE设备提供4个通道;第3条选通线导通时,PCIE插槽1011/PCIE插槽1012可以向PCIE设备提供8个通道;第4条选通线导通时,PCIE插槽1011/PCIE插槽1012可以向PCIE设备提供16个通道。
选通开关104与PCIE插槽1013/PCIE插槽1014/PCIE插槽1015通过3条选通线连接(图中未示出),第1条选通线导通时,PCIE插槽1013/PCIE插槽1014/PCIE插槽1015可以向PCIE设备提供2个通道;第2条选通线导通时,PCIE插槽1013/PCIE插槽1014/PCIE插槽1015可以向PCIE设备提供4个通道;第3条选通线导通时,PCIE插槽1013/PCIE插槽1014/PCIE插槽1015可以向PCIE设备提供8个通道。
假设计算设备100上电后,控制器102对5个PCIE插槽进行检测。检测到PCIE插槽1011和PCIE插槽1012的在位状态为在位,PCIE插槽1013、PCIE插槽1014和PCIE插槽1015的在位状态为未在位,且PCIE插槽1011上插接的PCIE设备所需的PCIE通道数量为16、PCIE插槽1012上插接的PCIE设备所需的PCIE通道数量为16。
控制器102可以通过BIOS在配置文件中将该PCIE插槽1011和PCIE插槽1012的PCIE通道数分别设置为16,并将PCIE插槽1013、PCIE插槽1014以及PCIE插槽1015的PCIE通道数分别设置为0。
控制器102还可以向选通开关104发送指示信息,以指示选通开关104将PCIE插槽1011的选通线4设置为导通状态、将PCIE插槽1012的选通线4设置为导通状态,并将PCIE插槽1013、PCIE插槽1014以及PCIE插槽1015的所有选通线设置为断开状态。
本实施例提供的计算设备100中,控制器102可以检测5个PCIE插槽的在位状态以及获取5个PCIE插槽上插设的PCIE设备所需的通道数量,可以通过BIOS配置5个PCIE插槽的配置信息,并可以指示选通开关104将相应的选通线设置为导通状态,以支撑每一个PCIE插槽可以接入不同规格的PCIE设备,使得计算设备100的应用灵活性较高。
下面,结合图7-图8对上述方式2进行详细说明。
图7为本申请实施例提供的又一种计算设备的结构示意图。请参见图7,计算设备100还包括BMC103,BMC103分别与至少一个PCIE插槽、控制器102和选通开关104连接。
本实施例中,BMC103用于检测至少一个PCIE插槽的在位状态以及用于获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量;并根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量控制控制器为至少一个目标PCIE插槽分配PCIE通道。
一种可能的实现方式中,计算设备100上电后,BMC103可以依次轮询对每一个PCIE插槽进行检测,以获取PCIE插槽的在位状态以及PCIE插槽上插设的PCIE设备所需的通道数量;并可以向控制器102发送每个PCIE插槽上插设的PCIE设备所需的通道数量,以使控制器102可以向至少一个PCIE插槽分配PCIE通道。
示例性的,计算设备100上电后,假设某个PCIE插槽上未插设PCIE设备,BMC103可以获取到该PCIE插槽的在位状态为未在位;则BMC103可以控制控制器102不向该插槽分配通道。假设某个16通道PCIE插槽上插设有8通道的PCIE设备,则BMC103可以获取到该PCIE插槽的在位状态为在位、且该PCIE插槽上插设的PCIE设备所需的通道数量为8;BMC103可以向控制器102发送该PCIE插槽上插设的PCIE设备所需的通道数量为8,以使控制器102可以通过BIOS将该PCIE插槽的PCIE通道数量设置为8。
另一种可能的实现方式中,计算设备100运行过程中,BMC103可以周期性对每一个PCIE插槽进行检测,并在PCIE插槽上插接的PCIE设备更换时,向控制器102发送更换后PCIE设备所需的通道数量,以使控制器102根据最新的PCIE设备所需的通道数量为该PCIE插槽分配PCIE通道。
示例性的,计算设备100运行过程中,假设BMC103在周期性检测中检测到某个PCIE插槽上插接的PCIE设备更换,且更换后的PCIE设备为16通道的PCIE设备,则BMC103可以向控制器102发送更换后PCIE设备所需的通道数量为16,以使控制器102可以通过BIOS将该PCIE插槽的PCIE通道数量设置为16。
本实施例中,BMC103还用于根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制选通开关104的状态。也就是说,BMC103还用于指示选通开关104将K条选通线中的一条选通线设置为导通状态。
具体而言,BMC103获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量后,可以根据PCIE设备所需的通道数量向选通开关104发送指示信息,以指示选通开关104将K条选通线中的至少一条选通线设置为导通状态。例如,若某个PCIE设备所需的PCIE通道数量为4。则BMC103可以向选通开关104发送指示信息,以指示选通开关104将用于向该PCIE设备提供4个通道的选通线设置为导通状态。
示例性的,假设某PCIE插槽对应16个通道,选通开关104通过4条选通线与该PCIE插槽连接。第1条选通线导通时,PCIE插槽可以向PCIE设备提供2个通道,第2条选通线导通时,PCIE插槽可以向PCIE设备提供4个通道,第3条选通线导通时,PCIE插槽可以向PCIE设备提供8个通道,第4条选通线导通时,PCIE插槽可以向PCIE设备提供16个通道。若BMC103检测到该PCIE插槽的在位状态为在位、且该PCIE插槽上插设的PCIE设备所需的通道数量为8。则BMC103可以向选通开关104发送指示信息,以指示选通开关104将第3条选通线设置为导通状态。
本实施例提供的计算设备100中,BMC103可以检测至少一个PCIE插槽的在位状态以及获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量;可以根据PCIE设备所需的通道数量控制选通开关104的状态;并可以向控制器102发送PCIE设备所需的通道数量,以使控制器102可以为PCIE插槽分配PCIE通道。通过上述设置,可以支撑PCIE插槽接入不同规格的PCIE设备,使得计算设备100的应用灵活性较高。
下面,结合图8,通过具体的示例,对图7实施例所示的技术方案进行详细说明。
图8为本申请实施例提供的一种BMC检测PCIE插槽的在位状态的示意图。请参见图8,计算设备100包括控制器102、BMC103、选通开关104和5个PCIE插槽。
控制器102可以提供40个PCIE通道。
PCIE插槽1为16通道PCIE插槽,PCIE插槽2为16通道PCIE插槽,PCIE插槽3为8通道PCIE插槽,PCIE插槽4为8通道PCIE插槽,PCIE插槽5为8通道PCIE插槽。
选通开关104分别与控制器102、BMC103、以及5个PCIE插槽连接。
BMC103还分别与控制器102、以及5个PCIE插槽连接。
选通开关104与PCIE插槽1011/PCIE插槽1012通过4条选通线连接(图中未示出),第1条选通线导通时,PCIE插槽1011/PCIE插槽1012可以向PCIE设备提供2个通道;第2条选通线导通时,PCIE插槽1011/PCIE插槽1012可以向PCIE设备提供4个通道;第3条选通线导通时,PCIE插槽1011/PCIE插槽1012可以向PCIE设备提供8个通道;第4条选通线导通时,PCIE插槽1011/PCIE插槽1012可以向PCIE设备提供16个通道。
选通开关104与PCIE插槽1013/PCIE插槽1014/PCIE插槽1015通过3条选通线连接(图中未示出),第1条选通线导通时,PCIE插槽1013/PCIE插槽1014/PCIE插槽1015可以向PCIE设备提供2个通道;第2条选通线导通时,PCIE插槽1013/PCIE插槽1014/PCIE插槽1015可以向PCIE设备提供4个通道;第3条选通线导通时,PCIE插槽1013/PCIE插槽1014/PCIE插槽1015可以向PCIE设备提供8个通道。
假设计算设备100上电后,BMC103对5个PCIE插槽进行检测,检测到PCIE插槽1、PCIE插槽2、PCIE插槽3、PCIE插槽4和PCIE插槽5的在位状态均为在位,且每个PCIE插槽上插设的PCIE设备所需的通道数量均为8。
BMC103可以向控制器102发送5个PCIE插槽上插设的PCIE设备所需的通道数量分别为8,以使控制器102可以通过BIOS在配置文件中将每个PCIE插槽的PCIE通道数设置为8。
BMC103还可以向选通开关104发送指示信息,以指示选通开关104分别将每个PCIE插槽的选通线3设置为导通状态。
本实施例提供的计算设备100中,BMC103可以检测5个PCIE插槽的在位状态以及获取5个PCIE插槽上插设的PCIE设备所需的通道数量、并可以向控制器102发送PCIE设备所需的通道数量。控制器102可以根据PCIE设备所需的通道数量设置对应PCIE插槽的配置信息。BMC103还可以根据PCIE设备所需的通道数量指示选通开关104将相应的选通线设置为导通状态。通过上述设置,可以支撑PCIE插槽接入不同规格的PCIE设备,使得计算设备100的应用灵活性较高。
下面,结合图9,对上述方式3进行详细说明。
图9为本申请实施例提供的又一种计算设备的结构示意图。请参见图9,计算设备100还包括CPLD105,CPLD105分别与至少一个PCIE插槽、控制器102和选通开关104连接。
需要说明的是,CPLD105可以位于计算设备100的主板上;或者,CPLD105也可以位于计算设备100中其他位置上;对此本实施例不做限定。
本实施例中,CPLD105用于检测至少一个PCIE插槽的在位状态以及用于获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量;并根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量控制控制器为至少一个目标PCIE插槽分配PCIE通道。
一种可能的实现方式中,计算设备100上电后,CPLD105可以依次轮询对每一个PCIE插槽进行检测,以获取PCIE插槽的在位状态以及PCIE插槽上插设的PCIE设备所需的通道数量;并可以向控制器102发送每个PCIE插槽上插设的PCIE设备所需的通道数量,以使控制器102可以向至少一个PCIE插槽分配PCIE通道。
示例性的,计算设备100上电后,假设某个PCIE插槽上未插设PCIE设备,CPLD105可以获取到该PCIE插槽的在位状态为未在位;则CPLD105可以控制控制器102不向该插槽分配通道。假设某个16通道PCIE插槽上插设有8通道的PCIE设备,则CPLD105可以获取到该PCIE插槽的在位状态为在位、且该PCIE插槽上插设的PCIE设备所需的通道数量为8;CPLD105可以向控制器102发送该PCIE插槽上插设的PCIE设备所需的通道数量为8,以使控制器102可以通过BIOS将该PCIE插槽的PCIE通道数量设置为8。
另一种可能的实现方式中,计算设备100运行过程中,CPLD105可以周期性对每一个PCIE插槽进行检测,并在PCIE插槽上插接的PCIE设备更换时,向控制器102发送更换后PCIE设备所需的通道数量,以使控制器102根据最新的PCIE设备所需的通道数量为该PCIE插槽分配PCIE通道。
示例性的,计算设备100运行过程中,假设CPLD105在周期性检测中检测到某个PCIE插槽上插接的PCIE设备更换,且更换后的PCIE设备为16通道的PCIE设备,则CPLD105可以向控制器102发送更换后PCIE设备所需的通道数量为16,以使控制器102可以通过BIOS将该PCIE插槽的PCIE通道数量设置为16。
本实施例中,CPLD105还用于根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制选通开关104的状态。也就是说,CPLD105还用于指示选通开关104将K条选通线中的至少一条选通线设置为导通状态。
具体而言,CPLD105获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量后,可以根据PCIE设备所需的通道数量向选通开关104发送指示信息,以指示选通开关104将K条选通线中的一条选通线设置为导通状态。例如,若某个PCIE设备所需的PCIE通道数量为4。则CPLD105可以向选通开关104发送指示信息,以指示选通开关104将用于向该PCIE设备提供4个通道的选通线设置为导通状态。
示例性的,假设某PCIE插槽对应16个通道,选通开关104通过4条选通线与该PCIE插槽连接。第1条选通线导通时,PCIE插槽可以向PCIE设备提供2个通道,第2条选通线导通时,PCIE插槽可以向PCIE设备提供4个通道,第3条选通线导通时,PCIE插槽可以向PCIE设备提供8个通道,第4条选通线导通时,PCIE插槽可以向PCIE设备提供16个通道。若CPLD105检测到该PCIE插槽的在位状态为在位、且该PCIE插槽上插设的PCIE设备所需的通道数量为8。则CPLD105可以向选通开关104发送指示信息,以指示选通开关104将第3条选通线设置为导通状态。
可选的,在一些实施例中,CPLD105还可以通过BMC103控制选通开关的状态。
具体而言,CPLD105还可以向BMC103发送至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,以使BMC103可以根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制选通开关104的状态。
需要说明的是,BMC103根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量控制选通开关104的状态的具体方式可以参见图7-图8实施例,此处不再赘述。
本实施例提供的计算设备100中,CPLD105可以检测至少一个PCIE插槽的在位状态以及获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量;可以根据PCIE设备所需的通道数量控制选通开关104的状态;并可以向控制器102发送PCIE设备所需的通道数量,以使控制器102可以为PCIE插槽分配PCIE通道。通过上述设置,可以支撑PCIE插槽接入不同规格的PCIE设备,使得计算设备100的应用灵活性较高。
需要说明的是,图9实施例所示的技术方案的具体示例可以参见图7,此处不再赘述。
在上述任一实施例的基础上,本申请实施例还提供了一种PCIE通道分配方法。下面,结合图10,对本申请实施例提供的PCIE通道分配方法进行说明。
图10为本申请实施例提供的一种PCIE通道分配方法的流程示意图。该方法的执行主体可以为PCIE通道分配装置,也可以为集成了PCIE通道分配装置的BMC,下述以执行主体为集成了PCIE通道分配装置的BMC为例进行说明。请参见图10,该方法可以包括:
S101、获取至少一个PCIE插槽的在位状态和至少一个PCIE插槽上插设的PCIE设备所需的通道数量。
本实施例中,计算设备包括BMC、控制器、选通开关和至少一个PCIE插槽。
控制器分别与选通开关和BMC连接;控制器用于提供M个PCIE通道,M小于或等于至少一个PCIE插槽对应的通道总数。
BMC还分别与选通开关和至少一个PCIE插槽连接。
在位状态用于指示PCIE插槽中是否插设PICE设备。例如,PCIE插槽中插设有PCIE设备时,在位状态可以为在位;PCIE插槽中未插设PCIE设备时,在位状态可以为未在位。
本实施例中,BMC可以监控至少一个PCIE插槽的在位状态,并可以在任意一个PCIE插槽的在位状态改变后,获取至少一个PCIE插槽的在位状态和至少一个PCIE插槽上插设的PCIE设备所需的通道数量。
例如,计算设备上电后,BMC可以获取至少一个PCIE插槽的在位状态和至少一个PCIE插槽上插设的PCIE设备所需的通道数量;或者,计算设备运行过程中,任意一个PCIE插槽上插设的PCIE设备更换后,BMC可以获取至少一个PCIE插槽的在位状态和至少一个PCIE插槽上插设的PCIE设备所需的通道数量。
S102、在至少一个PCIE插槽中确定至少一个目标PCIE插槽,并确定至少一个目标PCIE插槽上插设的PCIE设备所需的PCIE通道数量之和P。
目标PCIE插槽的在位状态为在位。
本实施例中,BMC可以将在位状态为在位的PCIE插槽确定为目标PCIE插槽,并可以计算至少一个目标PCIE插槽上插设的PCIE设备所需的PCIE通道数量之和P。
S103、判断P是否小于或等于控制器能够提供的PCIE通道数量M。
若是,执行S104;
若否,执行S105。
S104、根据至少一个PCIE设备所需的PCIE通道数量,确定为每个PCIE插槽分配的PCIE通道的数量。
P小于或等于M时,控制器可以向每个目标PCIE插槽分配其所需的PCIE通道数量。其中,目标PCIE插槽所需的PCIE通道数量可以为,目标PCIE插槽上插设的PCIE设备所需的PCIE通道数量。
需要说明的是,BMC根据至少一个PCIE设备所需的PCIE通道数量,确定为每个PCIE插槽分配的PCIE通道的数量的方法,可以参见图7-图8实施例,此处不再赘述。
S105、获取至少一个目标PCIE插槽的优先级,并根据M和至少一个目标PCIE插槽的优先级,确定为每个PCIE插槽分配的PCIE通道的数量。
PCIE插槽的优先级可以为,PCIE插槽上插设的PCIE设备的优先级。
PCIE设备的优先级可以根据PCIE设备的种类确定。例如,网卡的优先级可以为1级,存储卡的优先级可以为2级等。
示例性的,假设某个PCIE插槽上插设的PCIE设备为网卡,网卡的优先级为1级。则该PCIE插槽的优先级为1级。
需要说明的是,BMC可以获取每个目标PCIE插槽上插设的PCIE设备的种类,以及每种PCIE设备的优先级。
应该理解的是,每种PCIE设备的优先级可以存储于计算设备。可选的,每种PCIE设备的优先级可以存储于BMC。
本实施例中,根据M和至少一个目标PCIE插槽的优先级,确定为每个PCIE插槽分配的PCIE通道的数量,至少存在如下2种情况:
情况1、按照优先级从高到低的顺序,依次为至少一个目标PCIE插槽分配其所需的PCIE通道的数量。其中,为至少一个目标PCIE插槽分配的PCIE通道总数量等于M。
该情况下,优先级较低的至少一个目标PCIE插槽可以分配的PCIE通道的数量为0;或者,优先级较低的至少一个目标PCIE插槽可以分配的PCIE通道的数量小于其所需的PCIE通道数。
示例性的,假设控制器可以提供的PCIE通道的总数为40个。计算设备包括5个PCIE插槽,5个PCIE插槽分别为PCIE插槽A、PCIE插槽B、PCIE插槽C、PCIE插槽D和PCIE插槽E。
PCIE插槽A对应的PCIE通道数为16,PCIE插槽B对应的PCIE通道数为16,PCIE插槽C对应的PCIE通道数为8,PCIE插槽D对应的PCIE通道数为8,PCIE插槽E对应的PCIE通道数为4。
BMC检测到PCIE插槽A、PCIE插槽B、PCIE插槽C和PCIE插槽D的在位状态为在位,PCIE插槽E的在位状态为未在位。且PCIE插槽A上插设的PCIE设备所需的通道数量为16,PCIE插槽B上插设的PCIE设备所需的通道数量为16,PCIE插槽C上插设的PCIE设备所需的通道数量为8,PCIE插槽D上插设的PCIE设备所需的通道数量为8。
由此,PCIE插槽A、PCIE插槽B、PCIE插槽C和PCIE插槽D为4个目标PCIE插槽,且4个目标PCIE插槽所需的PCIE通道总数为48。
假设4个目标PCIE插槽按照优先级从高到低的顺序依次为PCIE插槽A、PCIE插槽B、PCIE插槽C和PCIE插槽D。
这样,可以按照优先级从高到低的顺序,确定为PCIE插槽A分配的PCIE通道数为16、为PCIE插槽B分配的PCIE通道数为16、为PCIE插槽C分配的PCIE通道数为8、以及为PCIE插槽D分配的PCIE通道数为0。其中,为PCIE插槽A、PCIE插槽B和PCIE插槽C分配的PCIE通道总数量等于40。
情况2、根据至少一个PCIE插槽的优先级、以及每个目标PCIE插槽所需的最少PCIE通道数量,为至少一个目标PCIE插槽分配PCIE通道。其中,为至少一个目标PCIE插槽分配的PCIE通道总数量等于M。
该情况下,BMC可以获取每个目标PCIE插槽所需的最少PCIE通道数量。
目标PCIE插槽所需的最少PCIE通道数量可以为,目标PCIE插槽上插设的PCIE设备所需的最少PCIE通道数量。
应该理解的是,每种PCIE设备所需的最少PCIE通道数量可以存储于计算设备。可选的,每种PCIE设备所需的最少PCIE通道数量可以存储于BMC。
本实施例中,BMC可以确定至少一个目标PCIE插槽所需的最少PCIE通道数量之和N,并可以根据至少一个目标PCIE插槽的优先级、N以及M为至少一个目标PCIE插槽分配PCIE通道。
一种可能的实现方式中,若N小于M,则按照每个目标PCIE插槽所需的最少PCIE通道数量,将N个PCIE通道分配至至少一个目标PCIE插槽,并按照优先级从高到低的顺序、以及每个目标PCIE插槽所需的剩余PCIE通道数量,将N-M个PCIE通道分配至至少一个目标PCIE插槽。
示例性的,假设控制器可以提供的PCIE通道的总数为40个。计算设备包括5个PCIE插槽,5个PCIE插槽分别为PCIE插槽A、PCIE插槽B、PCIE插槽C、PCIE插槽D和PCIE插槽E。
PCIE插槽A对应的PCIE通道数为16,PCIE插槽B对应的PCIE通道数为16,PCIE插槽C对应的PCIE通道数为8,PCIE插槽D对应的PCIE通道数为8,PCIE插槽E对应的PCIE通道数为4。
BMC检测到PCIE插槽A、PCIE插槽B、PCIE插槽C和PCIE插槽D的在位状态为在位,PCIE插槽E的在位状态为未在位。且PCIE插槽A上插设的PCIE设备所需的通道数量为16,PCIE插槽B上插设的PCIE设备所需的通道数量为16,PCIE插槽C上插设的PCIE设备所需的通道数量为8,PCIE插槽D上插设的PCIE设备所需的通道数量为8。
由此,PCIE插槽A、PCIE插槽B、PCIE插槽C和PCIE插槽D为4个目标PCIE插槽,且4个目标PCIE插槽所需的PCIE通道总数为48。也就是说,4个目标PCIE插槽所需的PCIE通道总数大于控制器可以提供的PCIE通道数量。
假设4个目标PCIE插槽按照优先级从高到低的顺序依次为PCIE插槽A、PCIE插槽B、PCIE插槽C和PCIE插槽D。
假设PCIE插槽A所需的最少PCIE通道数量为8,PCIE插槽B所需的最少PCIE通道数量为8,PCIE插槽C所需的最少PCIE通道数量为4,PCIE插槽D所需的最少PCIE通道数量为4。也就是说,4个目标PCIE插槽所需的最少PCIE通道总数量为24。
这样,可以先为每个目标PCIE插槽分配其所需的最少PCIE通道数。也就是说,为PCIE插槽A分配8个PCIE通道、PCIE插槽B分配8个PCIE通道、PCIE插槽C分配4个PCIE通道以及为PCIE插槽D分配4个PCIE通道。
再按照优先级从高到低的顺序,继续将16(40-24=16)个PCIE通道分配给至少一个目标PCIE插槽。也就是说,再向PCIE插槽A分配其所需的8个PCIE通道、以及再向PCIE插槽B分配其所需的8个PCIE通道。
另一种可能的实现方式中,若N大于或等于M,则按照优先级从高到低的顺序、以及每个目标PCIE插槽所需的最少PCIE通道数量,为至少一个目标PCIE插槽分配PCIE通道。
示例性的,假设控制器可以提供的PCIE通道的总数为30个。计算设备包括5个PCIE插槽,5个PCIE插槽分别为PCIE插槽A、PCIE插槽B、PCIE插槽C、PCIE插槽D和PCIE插槽E。
PCIE插槽A对应的PCIE通道数为16,PCIE插槽B对应的PCIE通道数为16,PCIE插槽C对应的PCIE通道数为8,PCIE插槽D对应的PCIE通道数为4,PCIE插槽E对应的PCIE通道数为4。
BMC检测到PCIE插槽A、PCIE插槽B、PCIE插槽C和PCIE插槽D的在位状态为在位,PCIE插槽E的在位状态为未在位。且PCIE插槽A上插设的PCIE设备所需的通道数量为16,PCIE插槽B上插设的PCIE设备所需的通道数量为16,PCIE插槽C上插设的PCIE设备所需的通道数量为8,PCIE插槽D上插设的PCIE设备所需的通道数量为4。
由此,PCIE插槽A、PCIE插槽B、PCIE插槽C和PCIE插槽D为4个目标PCIE插槽,且4个目标PCIE插槽所需的PCIE通道总数为44。也就是说,4个目标PCIE插槽所需的PCIE通道总数大于控制器可以提供的PCIE通道数量。
假设4个目标PCIE插槽按照优先级从高到低的顺序依次为PCIE插槽A、PCIE插槽B、PCIE插槽C和PCIE插槽D。
假设PCIE插槽A所需的最少PCIE通道数量为12,PCIE插槽B所需的最少PCIE通道数量为12,PCIE插槽C所需的最少PCIE通道数量为4,PCIE插槽D所需的最少PCIE通道数量为2。也就是说,4个目标PCIE插槽所需的最少PCIE通道总数量为30。
这样,可以按照优先级从高到低的顺序,为至少一个目标PCIE插槽分配其所需的最少PCIE通道数。也就是说,为PCIE插槽A分配12个PCIE通道、PCIE插槽B分配12个PCIE通道、PCIE插槽C分配4个PCIE通道以及为PCIE插槽D分配2个PCIE通道。其中,为PCIE插槽A、PCIE插槽B和PCIE插槽C分配的PCIE通道总数量等于30。
S106、向控制器发送为每个PCIE插槽分配的PCIE通道的数量。
本实施例中,BMC确定为每个PCIE插槽分配的PCIE通道的数量之后,可以向控制器发送为每个PCIE插槽分配的PCIE通道的数量,以使控制器可以通过BIOS为每个PCIE插槽分配相应的PCIE通道。
S107、根据为每个PCIE插槽分配的PCIE通道的数量,控制选通开关的状态。
本实施例中,BMC确定为每个PCIE插槽分配的PCIE通道的数量之后,还可以向选通开关发送指示信息,以指示选通开关将相应的选通线设置为导通状态。
需要说明的是,S106可以在S107之前实施;或者,S106可以在S107之后实施;或者,S106可以和S107同时实施。本实施例对此不做限定。
本实施例提供的PCIE通道分配方法,BMC可以检测至少一个PCIE插槽的在位状态以及获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量;可以根据PCIE设备所需的通道数量控制选通开关的状态;并可以向控制器发送PCIE设备所需的通道数量,以使控制器可以为PCIE插槽分配PCIE通道。通过上述设置,可以支撑PCIE插槽接入不同规格的PCIE设备,使得计算设备的应用灵活性较高。
在上述任一实施例的基础上,下面,结合图11,对本申请实施例提供的PCIE通道分配方法进行进一步说明。
图11为本申请实施例提供的另一种PCIE通道分配方法的流程示意图。该方法的执行主体可以为PCIE通道分配装置,也可以为集成了PCIE通道分配装置的控制器,下述以执行主体为集成了PCIE通道分配装置的控制器为例进行说明。请参见图11,该方法可以包括:
S111、确定为每个PCIE插槽分配的PCIE通道的数量。
本实施例中,计算设备包括控制器、选通开关和至少一个PCIE插槽。
控制器分别与选通开关和至少一个PCIE插槽连接,选通开关还与至少一个PCIE插槽连接;控制器用于提供M个PCIE通道,M小于或等于至少一个PCIE插槽对应的通道总数。
本实施例中,控制器可以获取至少一个PCIE插槽的在位状态和至少一个PCIE插槽上插设的PCIE设备所需的通道数量;并可以根据至少一个PCIE插槽的在位状态和至少一个PCIE插槽上插设的PCIE设备所需的通道数量,确定为每个PCIE插槽分配的PCIE通道的数量。
需要说明的是,控制器确定为每个PCIE插槽分配的PCIE通道的数量的方式,与BMC确定为每个PCIE插槽分配的PCIE通道的数量的方式一致,具体可以参见图10实施例,在此不做赘述。
S112、根据为每个PCIE插槽分配的PCIE通道的数量,通过选通开关为至少一个PCIE插槽分配PCIE通道。
本实施例中,控制器确定了为每个PCIE插槽分配的PCIE通道的数量之后,可以向选通开关发送指示信息,以指示选通开关将相应的选通线设置为导通状态;并可以通过BIOS为每个PCIE插槽分配相应的PCIE通道。
本实施例提供的PCIE通道分配方法,控制器可以检测至少一个PCIE插槽的在位状态以及获取至少一个PCIE插槽上插设的PCIE设备所需的通道数量,还可以根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制选通开关的状态,为至少一个目标PCIE插槽分配PCIE通道,以支撑PCIE插槽可以接入不同规格的PCIE设备,使得计算设备的应用灵活性较高。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被计算机执行时,实现如上任一方法实施例执行的PCIE通道分配方法,其实现原理和技术效果类似,此处不作赘述。
本申请实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被计算机执行时实现如上任一方法实施例执行的PCIE通道分配方法,其实现原理和技术效果类似,此处不作赘述。
实现上述各实施例的全部或部分方法可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(英文:read-only memory,缩写:ROM)、RAM、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppy disk)、光盘(英文:optical disc)及其任意组合。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程终端设备的处理单元以产生一个机器,使得通过计算机或其他可编程终端设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程终端设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请实施例权利要求及其等同技术的范围之内,则本申请实施例也意图包含这些改动和变型在内。
在本申请实施例中,术语“包括”及其变形可以指非限制性的包括;术语“或”及其变形可以指“和/或”。本申请实施例中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本申请实施例中,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

Claims (10)

1.一种计算设备,其特征在于,所述计算设备包括控制器、选通开关和至少一个PCIE插槽,其中,
所述控制器通过所述选通开关与所述至少一个PCIE插槽连接;
所述控制器用于提供M个PCIE通道,所述至少一个PCIE插槽对应的PCIE通道总数为N,所述M和所述N分别为正整数,所述N大于或等于所述M;
所述控制器用于通过所述选通开关为所述至少一个PCIE插槽分配PCIE通道。
2.根据权利要求1所述的设备,其特征在于,针对任意一个PCIE插槽,所述PCIE插槽对应2K个通道,所述K为大于或等于1的整数;
所述选通开关通过K条选通线与所述PCIE插槽连接,其中,所述选通开关用于将所述K条选通线中的至少一条选通线设置为导通状态。
3.根据权利要求1或2所述的设备,其特征在于,所述控制器分别与所述选通开关和所述至少一个PCIE插槽连接,所述选通开关还与所述至少一个PCIE插槽连接;
所述控制器用于检测所述至少一个PCIE插槽的在位状态以及用于获取所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量;所述在位状态用于指示所述PCIE插槽中是否插设PICE设备;
所述控制器还用于根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制所述选通开关的状态,为所述至少一个目标PCIE插槽分配PCIE通道;所述目标PCIE插槽为插设有PCIE设备的插槽。
4.根据权利要求1或2所述的设备,其特征在于,所述计算设备还包括基板管理控制器BMC,所述BMC分别与所述至少一个PCIE插槽、所述控制器和所述选通开关连接,其中,
所述BMC用于检测所述至少一个PCIE插槽的在位状态以及用于获取所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量;所述在位状态用于指示所述PCIE插槽中是否插设PICE设备;
所述BMC还用于根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制所述选通开关的状态,并根据所述至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量控制所述控制器为所述至少一个目标PCIE插槽分配PCIE通道;所述目标PCIE插槽为插设有PCIE设备的插槽。
5.根据权利要求1或2所述的设备,其特征在于,所述计算设备还包括可编程逻辑器件CPLD;所述CPLD分别与所述至少一个PCIE插槽、所述控制器和所述选通开关连接,其中,
所述CPLD用于检测所述至少一个PCIE插槽的在位状态以及用于获取所述至少一个PCIE插槽上插设的PCIE设备所需的通道数量;所述在位状态用于指示所述PCIE插槽中是否插设PICE设备;
所述CPLD还用于根据至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量,控制所述选通开关的状态,并根据所述至少一个目标PCIE插槽上插设的PCIE设备所需的通道数量控制所述控制器为所述至少一个目标PCIE插槽分配PCIE通道;所述目标PCIE插槽为插设有PCIE设备的插槽。
6.一种PCIE通道分配方法,其特征在于,应用于计算设备,所述计算设备包括控制器、选通开关和至少一个PCIE插槽,所述控制器通过所述选通开关与所述至少一个PCIE插槽连接;所述控制器用于提供M个PCIE通道,M小于或等于所述至少一个PCIE插槽对应的通道总数,所述方法包括:
所述控制器确定为每个PCIE插槽分配的PCIE通道的数量;
所述控制器根据为每个PCIE插槽分配的PCIE通道的数量,通过所述选通开关为所述至少一个PCIE插槽分配PCIE通道。
7.根据权利要求6所述的方法,其特征在于,所述确定为每个PCIE插槽分配的PCIE通道的数量,包括:
获取至少一个目标PCIE插槽上插设的至少一个PCIE设备所需的PCIE通道的数量之和;所述目标PCIE插槽为插设有PCIE设备的PCIE插槽;
在所述数量之和大于所述M时,获取所述至少一个目标PCIE插槽的优先级;
按照优先级从高到低的顺序,依次为至少一个目标PCIE插槽分配其所需的PCIE通道的数量,为所述至少一个目标PCIE插槽分配的PCIE通道总数量等于所述M。
8.根据权利要求6所述的方法,其特征在于,所述确定为每个PCIE插槽分配的PCIE通道的数量,包括:
获取至少一个目标PCIE插槽上插设的至少一个PCIE设备所需的PCIE通道的数量之和;所述目标PCIE插槽为插设有PCIE设备的PCIE插槽;
在所述数量之和大于所述M时,获取所述至少一个目标PCIE插槽的优先级、以及每个目标PCIE插槽所需的最少PCIE通道数量;
根据所述至少一个PCIE插槽的优先级、以及每个目标PCIE插槽所需的最少PCIE通道数量,为所述至少一个目标PCIE插槽分配PCIE通道,其中,为所述至少一个目标PCIE插槽分配的PCIE通道总数量等于所述M。
9.根据权利要求8所述的方法,其特征在于,所述至少一个目标PCIE插槽所需的最少PCIE通道数量之和为N;所述根据所述至少一个PCIE插槽的优先级、以及每个目标PCIE插槽所需的最少PCIE通道数量,为所述至少一个目标PCIE插槽分配PCIE通道,包括:
在N小于M时,按照每个目标PCIE插槽所需的最少PCIE通道数量,将N个PCIE通道分配至所述至少一个目标PCIE插槽,并按照优先级从高到低的顺序、以及每个目标PCIE插槽所需的剩余PCIE通道数量,将N-M个PCIE通道分配至所述至少一个目标PCIE插槽;
在N大于或等于M时,按照优先级从高到低的顺序、以及每个目标PCIE插槽所需的最少PCIE通道数量,为所述至少一个目标PCIE插槽分配PCIE通道。
10.根据权利要求6-9任一项所述的方法,其特征在于,所述控制器确定为每个PCIE插槽分配的PCIE通道的数量,包括:
监控所述至少一个PCIE插槽的在位状态,在所述在位状态改变后,所述控制器确定为每个PCIE插槽分配的PCIE通道的数量。
CN202310180243.7A 2023-02-28 2023-02-28 计算设备和pcie通道分配方法 Pending CN116401191A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310180243.7A CN116401191A (zh) 2023-02-28 2023-02-28 计算设备和pcie通道分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310180243.7A CN116401191A (zh) 2023-02-28 2023-02-28 计算设备和pcie通道分配方法

Publications (1)

Publication Number Publication Date
CN116401191A true CN116401191A (zh) 2023-07-07

Family

ID=87011367

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310180243.7A Pending CN116401191A (zh) 2023-02-28 2023-02-28 计算设备和pcie通道分配方法

Country Status (1)

Country Link
CN (1) CN116401191A (zh)

Similar Documents

Publication Publication Date Title
CA1176337A (en) Distributed signal processing system
CN101158935B (zh) 南桥系统和方法
US7480757B2 (en) Method for dynamically allocating lanes to a plurality of PCI Express connectors
CN110083494B (zh) 在多核心环境中管理硬件错误的方法和装置
CN104714846A (zh) 资源处理方法、操作系统及设备
US9806959B2 (en) Baseboard management controller (BMC) to host communication through device independent universal serial bus (USB) interface
CN103365717A (zh) 内存访问方法、装置及系统
CN103176913B (zh) 硬盘动态映射方法与应用其的服务器
CN112685347A (zh) 一种不同带宽的pcie设备的兼容方法、装置及服务器
CN115033352A (zh) 多核处理器任务调度方法、装置及设备、存储介质
CN116541227A (zh) 故障诊断方法、装置、存储介质、电子装置及bmc芯片
US7519800B2 (en) Apparatus and method for enforcing homogeneity within partitions of heterogeneous computer systems
US20180048559A1 (en) Apparatus assigning controller and apparatus assigning method
CN114691224A (zh) 设备加载系统、方法及电子设备
CN114281516A (zh) 一种基于numa属性的资源分配方法及装置
JP4402624B2 (ja) 負荷管理装置および負荷管理方法
CN117135055A (zh) 带宽资源的控制方法及装置、存储介质及电子装置
US11573833B2 (en) Allocating cores to threads running on one or more processors of a storage system
CN116795642A (zh) 服务器子卡的监控方法、装置、计算机设备及存储介质
CN116401191A (zh) 计算设备和pcie通道分配方法
CN111258763B (zh) 一种服务器系统及服务器系统的控制方法和装置
CN116401043A (zh) 一种计算任务的执行方法和相关设备
KR102692866B1 (ko) 컴퓨팅 자원 분할 운용 방법 및 장치
CN112631979A (zh) 一种自动分配pcie信号的服务器及方法
CN112783809A (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