本申请涉及计算机,尤其涉及一种pcie设备的管理方法及装置、芯片。
背景技术:
1、在高速周边元件互联(peripheral component interconnect express,pcie)系统中,支持将加速器接入处理器,并通过加速器的端口接入pcie设备。其中,需要对接入的pcie设备进行枚举并确定每个pcie设备的总线(bus)配置。
2、相关技术中,在基本输入输出系统(basic input output system,bios)启动阶段会给每个加速器设置固定的bus资源。在枚举阶段,基于加速器对应的bus资源确定该加速器所接入的pcie设备的总线配置。
3、但是当某一加速器所接入的pcie设备的bus需求大于该加速器对应的bus资源时,pcie系统将无法加载部分pcie设备,影响pcie系统的正常运行。
技术实现思路
1、本申请提供一种pcie设备的管理方法及装置、芯片,解决了相关技术中当某一加速器所接入的pcie设备的bus需求大于该加速器对应的bus资源时,pcie系统将无法加载部分pcie设备的问题,能够实现每个加速器对应的bus资源的按需分配,从而避免了bus资源的浪费。
2、第一方面,本申请提供一种pcie设备的管理方法,所述方法包括:确定多个加速器共享的bus资源池,所述加速器用于接入pcie设备,所述bus资源池用于向所述多个加速器接入的pcie设备提供bus配置;当所述加速器接入的pcie设备的bus需求大于所述加速器对应的bus资源时,重新从所述bus资源池中分配所述多个加速器分别对应的所述bus资源。
3、bus资源池可以包括系统中的所有bus段。加速器接入的pcie设备的bus需求可以包括加速器接入的pcie设备所需的bus号数量,加速器对应的bus资源可以包括加速器对应的bus号数量阈值。
4、其有益效果是多个加速器共享bus资源池,当某一加速器所接入的pcie设备的bus需求大于该加速器对应的bus资源时,通过重新从bus资源池中分配多个加速器分别对应的bus资源,可以增大该加速器对应的bus资源,减小所接入的pcie设备的bus需求较小的加速器对应的bus资源,保证了加速器接入的每个pcie设备的正常加载,实现了每个加速器对应的bus资源的按需分配,从而避免了bus资源的浪费,bus资源的分配灵活性较高。
5、在一种可能的实现方式中,所述方法还包括:截获枚举过程中所述pcie设备的配置信息,所述pcie设备的配置信息用于指示:所述pcie设备的所述总线配置;向所述多个加速器广播所述pcie设备的配置信息。
6、pcie设备的bus配置可以包括pcie设备的bus号。该过程可以在系统枚举阶段执行。在每次重新分配多个加速器对应的bus资源后,均需要重新执行枚举过程,以确定pcie系统中的所有pcie设备,并确定每个pcie设备的配置信息(包括分配每个pcie设备的bus号)。在枚举过程中每确定一个pcie设备的配置信息,即会向该pcie设备发送其配置信息。在该过程中,处理器中的decoder会将本发往pcie设备的配置信息进行截获。
7、广播pcie设备的配置信息,能够保证pcie系统中各个加速器同步获取到每个pcie设备的配置信息,从而保证后续报文传输过程的正常进行。
8、在一种可能的实现方式中,所述方法还包括:在接收到报文时,基于每个所述pcie设备的配置信息以及所述报文中携带的总线信息,将所述报文路由至目的pcie设备所接入的加速器,所述总线信息用于指示所述目的pcie设备的总线配置。
9、在一种可能的实现方式中,所述多个加速器接入的pcie设备共享内存映射输入/输出(memory mapped input/output,mmio)空间。
10、mmio空间用于处理器写入每个pcie设备的配置信息。相关技术中每个pcie设备具有一个mmio空间,而本申请实施例中,多个pcie设备共享一个mmio空间,能够实现操作系统的灵活管理。
11、第二方面,本申请提供一种pcie设备的管理装置,所述装置包括:处理模块,用于确定多个加速器共享的总线资源池,所述加速器用于接入pcie设备,所述总线资源池用于向所述多个加速器接入的pcie设备提供总线配置;所述处理模块,还用于当所述加速器接入的pcie设备的总线需求大于所述加速器对应的总线资源时,重新从所述总线资源池中分配所述多个加速器分别对应的所述总线资源。
12、在一种可能的实现方式中,所述处理模块,还用于截获枚举过程中所述pcie设备的配置信息,所述pcie设备的配置信息用于指示:所述pcie设备的所述总线配置;所述装置还包括:收发模块,用于向所述多个加速器广播所述pcie设备的配置信息。
13、在一种可能的实现方式中,所述收发模块,还用于在接收到报文时,基于每个所述pcie设备的配置信息以及所述报文中携带的总线信息,将所述报文路由至目的pcie设备所接入的加速器,所述总线信息用于指示所述目的pcie设备的总线配置。
14、在一种可能的实现方式中,所述多个加速器接入的pcie设备共享内存映射输入/输出mmio空间。
15、第三方面,本申请提供一种pcie设备的管理装置,所述装置包括:一个或多个处理器;存储器,用于存储一个或多个计算机程序或指令;当所述一个或多个计算机程序或指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中任一项所述的方法。
16、第四方面,本申请提供一种pcie设备的管理装置,包括,处理器,用于执行如第一方面中任一项所述的方法。
17、第五方面,本申请提供一种计算机可读存储介质,包括计算机程序或指令,所述计算机程序或指令在计算机上被执行时,使得所述计算机执行第一方面中任一项所述的方法。
18、第六方面,本申请提供一种芯片,包括:输入接口、输出接口、至少一个处理器。可选地,该芯片还包括存储器。该至少一个处理器用于执行该存储器中的代码,当该至少一个处理器执行该代码时,该芯片实现上述第一方面中任一项所述的方法。
19、可选地,上述芯片还可以为集成电路。
20、第七方面,本申请提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机实现第一方面中任一项所述的方法。
1.一种高速周边元件互联pcie设备的管理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1至3任一项所述的方法,其特征在于,所述多个加速器接入的pcie设备共享内存映射输入/输出mmio空间。
5.一种高速周边元件互联pcie设备的管理装置,其特征在于,所述装置包括:
6.根据权利要求5所述的装置,其特征在于,
7.根据权利要求6所述的装置,其特征在于,
8.根据权利要求5至7任一项所述的装置,其特征在于,所述多个加速器接入的pcie设备共享内存映射输入/输出mmio空间。
9.一种高速周边元件互联pcie设备的管理装置,其特征在于,所述装置包括:
10.一种芯片,其特征在于,所述芯片包括: