System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,特别是涉及一种带宽分配方法、装置、设备及可读存储介质。
技术介绍
1、在服务器领域,随着硬件技术的飞速发展,cpu与pcie(peripheral componentinterconnect express,高速串行计算机扩展总线标准)设备之间的数据传输速度和带宽需求不断攀升。
2、服务器主板上的pice接口一般采用pcie x8插槽和pcie x16插槽,便于后期插接不同种类的扩展卡,即使扩展卡上的金手指是x2或x4,同样可以插接到pcie x8插槽或pciex16插槽上。但是,目前cpu直接给pcie x8插槽和pcie x16插槽提供的带宽都是最大带宽,造成插入lane数量小的扩展卡时不能有效识别。而,对于不同型号的扩展卡,cpu同样分配最大带宽,导致pcie资源浪费,造成cpu功能损失。例如,两个pcie x8设备插到两个pciex16的槽位上,而无法实现在一个x16槽位支持两个pcie x8的设备。即,现有的带宽分配方案,不能实现为不同型号的pcie扩展卡的自动分配适宜带宽,也不能实现一个插槽为多个扩展卡提供带宽分配。
3、综上所述,如何有效地解决扩展卡的带宽分配等问题,是目前本领域技术人员急需解决的技术问题。
技术实现思路
1、本申请的目的是提供一种带宽分配方法、装置、设备及可读存储介质,能够自动识别扩展卡的类型,并按需完成带宽分配,特别是可以向一个卡槽,插入2个及以上的扩展卡进行带宽分配,能够有效节省pcie资源。
3、一种带宽分配方法,包括:
4、在已插入扩展卡的情况下,获取插槽中相邻金手指插孔间的插卡电容值;
5、将相邻金手指插孔间的所述插卡电容值与无卡电容值做差,得到电容差值;其中,所述无卡电容值为未插入扩展卡的情况下,该相邻金手指插孔间的电容值;
6、比对各相邻金手指插孔间的电容差值,确定是否存在跳变的电容差值;
7、若是,则将跳变的电容差值对应的相邻金手指插孔确定为不同所述已插入扩展卡间的过渡位置;
8、利用所述过渡位置,确定所述已插入扩展卡的型号;
9、基于型号与带宽的对应关系,对所述已插入扩展卡分配对应带宽。
10、优选地,利用所述过渡位置,确定所述已插入扩展卡的型号,包括:
11、确定扩展卡已插接的金手指插孔编号;
12、按照所述过渡位置对所述金手指插孔编号进行切分,得到若干个金手指插孔分区,并确定若干个所述金手指插孔分区的金手指插孔数量;
13、结合型号与金手指数量的对应关系,基于所述金手指插孔分区的金手指插孔数量,确定所述金手指插孔分区上已插入扩展卡的型号。
14、优选地,比对各相邻金手指插孔间的电容差值,确定是否存在跳变的电容差值,包括:
15、判断各相邻金手指插孔间的电容差值是否相等;
16、如果否,则确定存在跳变的电容差值;
17、如果否,则确定不存在跳变的电容差值。
18、优选地,确定不存在跳变的电容差值之后,包括:
19、获取所述已插入扩展卡在所述插槽上插接的金手指插孔数量;
20、结合型号与金手指数量的对应关系,基于所述金手指插孔数量,确定所述金手指插孔分区上所述已插入扩展卡的型号。
21、优选地,获取插槽中相邻金手指插孔间的插卡电容值,包括:
22、利用基本输入输出系统,基于pcie金手指插孔的端口,监测所述插槽中相邻金手指插孔间的插卡电容值;
23、接收所述基本输入输出系统反馈的所述插卡电容值。
24、优选地,获取所述无卡电容值,包括:
25、在所述插槽未插入扩展卡的情况下,利用单片机采集所述插槽中相邻金手指插孔之间的寄生电容值;其中,所述插槽具有m个金手指插孔,所述单片机中的n个引脚分别与所述插槽中相邻金手指之间的线路进行连接,m=n+1;
26、基于相邻金手指插孔的编号,对采集得到的n个所述寄生电容值进行标记;其中,所述标记格式包括前金手指插孔编号和后金手指插孔编号;
27、按照标记的大小顺序,将n个所述寄生电容值存入基本输入输出系统中;
28、在已插入扩展卡的情况下,从所述基本输入输出系统中按序读取所述寄生电容值,得到n个所述无卡电容值;
29、相应地,获取插槽中相邻金手指插孔间的插卡电容值,包括:
30、在所述插槽已插入扩展卡的情况下,利用所述单片机采集所述插槽中相邻金手指插孔之间的新寄生电容值;
31、基于相邻金手指插孔的编号,对采集得到的n个所述新寄生电容值进行标记;其中,所述标记格式包括前金手指插孔编号和后金手指插孔编号;
32、按照标记的大小顺序,将n个所述新寄生电容值存入所述基本输入输出系统中;
33、从所述基本输入输出系统中按序读取所述新寄生电容值,得到n个所述插卡电容值;
34、相应地,将相邻金手指插孔间的所述插卡电容值与无卡电容值做差,得到电容差值,包括:
35、对具有相同标记的所述插卡电容值与无卡电容值做差,得到n个所述电容差值。
36、优选地,所述插槽为pcie x16插槽,所述扩展卡为pcie卡;
37、相应地,基于型号与带宽的对应关系,对所述已插入扩展卡分配对应带宽,包括:
38、若一个所述pcie x16插槽中插入了至少两个扩展卡,则基于型号与带宽的对应关系,将所述pcie x16插槽对应的16g带宽按需拆分给所述已插入扩展卡。
39、一种带宽分配装置,包括:
40、插卡电容值获取模块,用于在已插入扩展卡的情况下,获取插槽中相邻金手指插孔间的插卡电容值;
41、电容差值确定模块,用于将相邻金手指插孔间的所述插卡电容值与无卡电容值做差,得到电容差值;其中,所述无卡电容值为未插入扩展卡的情况下,该相邻金手指插孔间的电容值;
42、跳变位置确定模块,用于比对各相邻金手指插孔间的电容差值,确定是否存在跳变的电容差值;
43、型号确定模块,用于若存在跳变的电容差值,则将跳变的电容差值对应的相邻金手指插孔确定为不同所述已插入扩展卡间的过渡位置;利用所述过渡位置,确定所述已插入扩展卡的型号;
44、带宽分配模块,用于基于型号与带宽的对应关系,对所述已插入扩展卡分配对应带宽。
45、一种电子设备,包括:
46、存储器,用于存储计算机程序;
47、处理器,用于执行所述计算机程序时实现上述带宽分配方法的步骤。
48、一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述带宽分配方法的步骤。
49、一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令本文档来自技高网...
【技术保护点】
1.一种带宽分配方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,利用所述过渡位置,确定所述已插入扩展卡的型号,包括:
3.根据权利要求1所述的方法,其特征在于,比对各相邻金手指插孔间的电容差值,确定是否存在跳变的电容差值,包括:
4.根据权利要求3所述的方法,其特征在于,确定不存在跳变的电容差值之后,包括:
5.根据权利要求1所述的方法,其特征在于,获取插槽中相邻金手指插孔间的插卡电容值,包括:
6.根据权利要求1所述的方法,其特征在于,获取所述无卡电容值,包括:
7.根据权利要求1至6任一项所述的方法,其特征在于,所述插槽为PCIe x16插槽,所述扩展卡为PCIe卡;
8.一种带宽分配装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括:
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述带宽分配方法的步骤。
【技术特征摘要】
1.一种带宽分配方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,利用所述过渡位置,确定所述已插入扩展卡的型号,包括:
3.根据权利要求1所述的方法,其特征在于,比对各相邻金手指插孔间的电容差值,确定是否存在跳变的电容差值,包括:
4.根据权利要求3所述的方法,其特征在于,确定不存在跳变的电容差值之后,包括:
5.根据权利要求1所述的方法,其特征在于,获取插槽中相邻金手指插孔间的插卡电容值,包括:
【专利技术属性】
技术研发人员:陈衍东,李道童,艾山彬,
申请(专利权)人:苏州元脑智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。