一种PCIE总线号的分配方法、装置、设备及存储介质制造方法及图纸

技术编号:26790761 阅读:20 留言:0更新日期:2020-12-22 17:05
本发明专利技术公开了一种PCIE总线号的分配方法、装置、设备及计算机可读存储介质,该方法包括:在BIOS初期检测IO Die上PCIE接口连接的PCIE设备;获取每个PCIE设备各自对应的预设PCIE总线号集;根据预设PCIE总线号集,为每个PCIE设备分配各自对应一个预设PCIE总线号;其中,任意两个PCIE设备对应的预设PCIE总线号不相同;本发明专利技术在BIOS初期为每个PCIE设备动态分配一个独一无二的暂时性的PCIE总线号,从而避免了PCIE设备的PCIE总线号分配冲突问题,使开发人员不需事前协议PCIE总线号分配,减少维护次数,一次性开发永久使用,节省人力时间成本。

【技术实现步骤摘要】
一种PCIE总线号的分配方法、装置、设备及存储介质
本专利技术涉及计算机
,特别涉及一种PCIE总线号的分配方法、装置、设备及计算机可读存储介质。
技术介绍
在Intel(英特尔)计算器架构,PCIE(PeripheralComponentInterconnectExpress,一种高速串行计算机扩展总线标准)是芯片用来与设备沟通的主要汇流排。为使PCIE设备正常驱动,BIOS(BasicInput/OutputSystem,基本输入输出系统)将控制权递交操作系统前,会将PCIE硬件要求参数初始化完毕。某些情况,PCIE设备初始化时间必须提前。如BIOS遭受破坏需读取SATA(SerialAdvancedTechnologyAttachment,串行高级技术附件)、USB(UniversalSerialBus,通用串行总线)当中的韧体恢复系统;以及,Intel雷电(Thunderbolt)等设备,需在BIOS前期使用指令唤醒开机支持等功能。现有技术中,BIOS对PCIE设备的初始化采用固定写死方法,指定PCIE总线号(Busnumber)给各个PCIE设备;如图1所示,以一台IntelE5系列服务器或是一部AMDROME(一种服务器芯片)平台为例,皆包含1至多个处理器,每个处理器更包含多个IODie(输入输出裸片),每个IODie上可能经过不同厂商设计有数个不相等PCIE接口,BIOS初期若需使用它们,现有作法不论Intel代码或是各大BIOS供货商,皆指定一个PCIE总线号(BUS#)给PCIE接口底下的PCIE设备;通常会采用现有代号上限“加1”授予PCIE设备;CPU-0IODie2的Bus#128~191,可以用129或直接授予最后一个191;随着PCIE设备增加,BIOS驱动的开发人员没有规划妥善,就会造成图1问题,Port2A和Port2C使用PCIE总线号(TempBUS)相同产生冲突,最终结果导致两个PCIE设备失效,除错费时。并且若多个BIOS驱动的开发人员都有希望BIOS初期运行PCIE的需求,必须协议PCIE总线号分配,添增了合作上的复杂度。因此,如何能够避免PCIE设备的PCIE总线号分配冲突问题,使开发人员不需事前协议PCIE总线号分配,是现今急需解决的问题。
技术实现思路
本专利技术的目的是提供一种PCIE总线号的分配方法、装置、设备及计算机可读存储介质,以避免PCIE设备的PCIE总线号分配冲突问题,使开发人员不需事前协议PCIE总线号分配。为解决上述技术问题,本专利技术提供一种PCIE总线号的分配方法,包括:在BIOS初期检测IODie上PCIE接口连接的PCIE设备;获取每个所述PCIE设备各自对应的预设PCIE总线号集;根据所述预设PCIE总线号集,为每个所述PCIE设备分配各自对应一个预设PCIE总线号;其中,任意两个所述PCIE设备对应的预设PCIE总线号不相同。可选的,所述获取每个所述PCIE设备各自对应的预设PCIE总线号集,包括:获取每个所述PCIE设备所连接的所述IODie对应的预设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总线号的分配装置,包括:检测模块,用于在BIOS初期检测IODie上PCIE接口连接的PCIE设备;获取模块,用于获取每个所述PCIE设备各自对应的预设PCIE总线号集;分配模块,用于根据所述预设PCIE总线号集,为每个所述PCIE设备分配各自对应一个预设PCIE总线号;其中,任意两个所述PCIE设备对应的预设PCIE总线号不相同。可选的,所述获取模块具体用于获取每个所述PCIE设备所连接的所述IODie对应的预设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总线号的分配方法,包括:在BIOS初期检测IODie上PCIE接口连接的PCIE设备;获取每个PCIE设备各自对应的预设PCIE总线号集;根据预设PCIE总线号集,为每个PCIE设备分配各自对应一个预设PCIE总线号;其中,任意两个PCIE设备对应的预设PCIE总线号不相同;可见,本专利技术通过根据预设PCIE总线号集,为每个PCIE设备分配各自对应一个预设PCIE总线号,能够在BIOS初期为每个PCIE设备动态分配一个独一无二的暂时性的PCIE总线号,从而避免了PCIE设备的PCIE总线号分配冲突问题,使开发人员不需事前协议PCIE总线号分配,减少维护次数,一次性开发永久使用,节省人力时间成本。此外,本专利技术还本文档来自技高网
...

【技术保护点】
1.一种PCIE总线号的分配方法,其特征在于,包括:/n在BIOS初期检测IO Die上PCIE接口连接的PCIE设备;/n获取每个所述PCIE设备各自对应的预设PCIE总线号集;/n根据所述预设PCIE总线号集,为每个所述PCIE设备分配各自对应一个预设PCIE总线号;其中,任意两个所述PCIE设备对应的预设PCIE总线号不相同。/n

【技术特征摘要】
1.一种PCIE总线号的分配方法,其特征在于,包括:
在BIOS初期检测IODie上PCIE接口连接的PCIE设备;
获取每个所述PCIE设备各自对应的预设PCIE总线号集;
根据所述预设PCIE总线号集,为每个所述PCIE设备分配各自对应一个预设PCIE总线号;其中,任意两个所述PCIE设备对应的预设PCIE总线号不相同。


2.根据权利要求1所述的PCIE总线号的分配方法,其特征在于,所述获取每个所述PCIE设备各自对应的预设PCIE总线号集,包括:
获取每个所述PCIE设备所连接的所述IODie对应的预设PCIE总线号集。


3.根据权利要求1所述的PCIE总线号的分配方法,其特征在于,所述根据所述预设PCIE总线号集,为每个所述PCIE设备分配各自对应一个预设PCIE总线号,包括:
扫描当前预设PCIE总线号集,确定未占用PCIE总线号;其中,当前预设PCIE总线号集为当前PCIE设备对应的预设PCIE总线号集,当前PCIE设备为任一所述PCIE设备,所述未占用PCIE总线号为当前预设PCIE总线号集中未标记为已占用的预设PCIE总线号;
从所述未占用PCIE总线号中选择目标预设PCIE总线号分配给当前PCIE设备,并将当前预设PCIE总线号集中所述目标预设PCIE总线号标记为已占用;其中,所述目标预设PCIE总线号为当前PCIE设备对应的所述未占用PCIE总线号中的一个预设PCIE总线号。


4.根据权利要求3所述的PCIE总线号的分配方法,其特征在于,所述从所述未占用PCIE总线号中选择目标预设PCIE总线号分配给当前PCIE设备,包括:
按由小到大的顺序,从所述未占用PCIE总线号中选择所述目标预设PCIE总线号;其中,所述目标预设PCIE总线号为所述未占用PCIE总线号中数值最小的一个预设PCIE总线号。


5.一种PCIE总线号的分配装置,其特征在于,包括:
检测模块,用于在BIOS初期检测IODie上PCIE接口连接的PCIE设备;

【专利技术属性】
技术研发人员:郑博元
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1