一种交换芯片、主机与端点设备通信系统的制作方法

专利2025-04-19  18


本发明涉及芯片设计,具体涉及一种交换芯片、主机与端点设备通信系统。


背景技术:

1、根据pcie(peripheral component interconnect express,高速串行计算机扩展总线标准)协议,主机cpu(central processing unit,中央处理器)中的rc(root complex,根复合体)是一颗pcie树的根节点,该节点负责管理整个pcie树。rc可以有一个或多个根端口,用于连接cpu外的pcie设备,对pcie树进行扩展。每一个根端口可以连接一个端点设备,或者通过连接一个pcie交换芯片扩展出多个的端口以连接多个端点设备。

2、传统的pcie交换芯片一般直接按照pcie协议定义的方式实现,内部的桥设备被对应的上行端口所连接的主机rc管理。由于ai等技术不断推动服务器多主机互联的需求,pcie交换芯片也面临多pcie域以及域间互操作的需求。由于pcie标准协议并未定义跨域操作,因此跨域一般使用端点设备之间的自定义互联传输信息,这样的一对端点设备一般称为两个主机之间的“非透明桥”,由于非透明桥的两个端点设备分别属于源pcie域和目标pcie域,因此,每一对源/目标需要一个专属的非透明桥。如果进一步增加主机数量,并且要求实现完全的互访时,需要的非透明桥的数量将进一步上升,这将极大地提升实现的复杂程度并且显著增加芯片成本。

3、因此,相关技术存在利用大量非透明桥实现主机与端点设备的跨域通信,导致芯片的复杂程度高、芯片成本大的问题。


技术实现思路

1、有鉴于此,本发明提供了一种交换芯片、主机与端点设备通信系统,以解决利用大量非透明桥实现主机与端点设备的跨域通信,导致芯片的复杂程度高、芯片成本大的问题。

2、第一方面,本发明提供了一种交换芯片,交换芯片的上行端口用于与第一预设数量个主机相连,交换芯片的下行端口用于与第二预设数量个端点设备相连;交换芯片包括编号转换模块;

3、编号转换模块用于获取主机发送的第一请求报文,将第一请求报文中的第一请求者本地域编号转换为第一请求者全局域编号,将转换后的第一请求报文发送至第一请求报文中第一目标端点设备地址对应的第一端点设备;

4、编号转换模块用于获取第一端点设备发送的第一响应报文,判断第一响应报文中是否包括第一请求者全局域编号,如果包括,将第一响应报文中的第一请求者全局域编号转换为第一请求者本地域编号,将第一响应报文中的第一应答者全局域编号转换为第一应答者本地域编号,将转换后的第一响应报文发送至第一请求者本地域编号对应的主机。

5、本实施例提供的交换芯片,利用交换芯片中的编号转换模块对各种报文中的本地域编号转换为全局域编号,将全局域编号转换为本地域编号。利用全局域编号作为中介,实现报文在主机和端点设备之间的顺利传输,降低多主机互操作的实现难度和实现成本。仅需要实现每个本地域至全局域之间的互操作,就可以实现全部的本地域互操作,可以大幅度减少本地域互操作的组合。解决了利用大量非透明桥实现主机与端点设备的跨域通信,导致芯片的复杂程度高、芯片成本大的问题。

6、在一种可选的实施方式中,编号转换模块还用于:

7、获取第二端点设备发送的第二请求报文,如果第二请求报文中包含第一目标主机地址,则将第二请求报文中的第二请求者全局域编号转换为第二请求者本地域编号,将转换后的第二请求报文发送至第一目标主机地址对应的目标主机;

8、获取目标主机发送的第二响应报文,将第二响应报文中的第二请求者本地域编号转换为第二请求者全局域编号,将第二响应报文中的第二应答者本地域编号转换为第二应答者全局域编号,将转换后的第二响应报文发送至第二请求者全局域编号对应的端点设备。

9、在本实施方式中,利用编号转换模块对第二请求报文和第二响应报文中的本地域编号转换为全局域编号,将全局域编号转换为本地域编号,使得端点设备可以主动向主机发送请求报文,并从主机接收到响应报文,降低多主机互操作的实现难度和实现成本。

10、在一种可选的实施方式中,交换芯片还包括:全局域编号分配模块、第三预设数量个上行桥设备以及第四预设数量个下行桥设备;

11、上行桥设备用于与主机相连,获取主机发送的配置空间读写指令,在接收到配置空间读写指令之后,向主机发送等待响应;

12、全局域编号分配模块用于获取下行桥设备的第一设备信息和端点设备的第二设备信息,根据第一设备信息,生成下行桥设备的全局域编号,根据第二设备信息,生成端点设备的全局域编号;

13、全局域编号分配模块与上行桥设备相连,用于从上行桥设备获取配置空间读写指令,从配置空间读写指令中获取下行桥设备的本地域编号和端点设备的本地域编号,根据下行桥设备的本地域编号和下行桥设备的全局域编号,生成第一关联关系,根据端点设备的本地域编号和端点设备的全局域编号,生成第二关联关系,根据第一设备信息和/或第二设备信息生成回复应答包,并通过上行桥设备将回复应答包发送至主机;

14、全局域编号分配模块与编号转换模块相连,用于将第一关联关系和第二关联关系配置给编号转换模块。

15、在本实施方式中,全局域编号分配模块根据第一设备信息,生成下行桥设备的全局域编号,根据第二设备信息,生成端点设备的全局域编号;根据下行桥设备的本地域编号和下行桥设备的全局域编号,生成第一关联关系,根据端点设备的本地域编号和端点设备的全局域编号,生成第二关联关系;使得后续通过第一关联关系和第二关联关系能够对设备的本地域编号和全局域编号进行转换,可实现任意两台主机的跨域交互,降低多主机互操作的实现难度和实现成本。

16、在一种可选的实施方式中,全局域编号分配模块从上行桥设备获取配置空间读写指令,包括:

17、读取上行桥设备的内部寄存器,获取配置空间读写指令;

18、全局域编号分配模块通过上行桥设备将回复应答包发送至主机,包括:

19、将回复应答包配置上行桥设备的内部寄存器,由主机从上行桥设备的内部寄存器获取回复应答包。

20、在一种可选的实施方式中,全局域编号分配模块还用于:

21、生成主机中根端口对应的主机全局域编号;

22、通过上行桥设备获取主机中根端口的编号,将根端口的编号作为主机本地域编号;

23、生成主机全局域编号和主机本地域编号的第三关联关系;

24、将第三关联关系配置给编号转换模块。

25、在本实施方式中,全局域编号分配模块生成主机全局域编号并获取主机本地域编号,生成主机全局域编号和主机本地域编号的第三关联关系并配置给编号转换模块。使得后续通过第三关联关系对主机的本地域编号和全局域编号进行转换,可实现任意两台主机的跨域交互,降低多主机互操作的实现难度和实现成本。

26、在一种可选的实施方式中,第三预设数量个下行桥设备用于生成第四预设数量个下行桥设备分组;

27、下行桥设备分组中包含目标下行桥设备和其余下行桥设备,其中,目标下行桥设备用于与其它下行桥设备分组中的目标下行桥设备通过物理链路相连,其余下行桥设备用于与端点设备相连;

28、主机通过目标下行桥设备和物理链路向非对应下行桥设备分组中的其余下行桥设备相连的端点设备发送第一请求报文。

29、在本实施方式中,目标下行桥设备用于与其它下行桥设备分组中的目标下行桥设备通过物理链路相连,使得主机通过目标下行桥设备和物理链路向任意端点设备发送请求报文。可大量增加互联的主机数量并实现任意两台主机的跨域交互,降低多主机互操作的实现难度和实现成本。

30、在一种可选的实施方式中,编号转换模块还用于:

31、获取端点设备发送的第二请求报文,如果第二请求报文中不包含第一目标主机地址,则不进行编号转换;

32、端点设备用于将第二请求报文发送至第二请求报文对应的端点设备,并从第二请求报文对应的端点设备获取第三响应报文。

33、在一种可选的实施方式中,编号转换模块将第一请求报文中的第一请求者本地域编号转换为第一请求者全局域编号,包括:

34、从第一请求者本地域编号中获取主机的本地域总线号、本地域设备号以及本地域功能号;

35、根据第三关联关系,确定本地域总线号对应的全局域总线号、本地域设备号对应的全局域设备号以及本地域功能号对应的全局域功能号;

36、确定第一请求者全局域编号,其中,第一请求者全局域编号包含全局域总线号、全局域设备号以及全局域功能号。

37、在本实施方式中,对第一请求者本地域编号中的本地域总线号、本地域设备号以及本地域功能号都进行编号转换,确保编号转换准确,是第一请求报文精准发送至对应的端点设备并使主机顺利收到第一响应报文。

38、在一种可选的实施方式中,编号转换模块将第一请求报文中的第一请求者本地域编号转换为第一请求者全局域编号,包括:

39、从第一请求者本地域编号中获取主机的本地域总线号、本地域设备号以及本地域功能号;

40、将本地域设备号作为全局域设备号,将本地域功能号作为全局域功能号;

41、根据第三关联关系,确定本地域总线号对应的全局域总线号;

42、确定第一请求者全局域编号,其中,第一请求者全局域编号包含全局域总线号、全局域设备号以及全局域功能号。

43、在本实施方式中,仅对第一请求者本地域编号中的本地域总线号进行编号转换,提高编号转换效率。

44、第二方面,本发明提供了一种主机与端点设备通信系统,该系统包括:第一预设数量个主机、第二预设数量个端点设备以及交换芯片,交换芯片为第一方面以及对应的任一实施方式的交换芯片;

45、交换芯片的上行端口用于与第一预设数量个主机相连,交换芯片的下行端口用于与第二预设数量个端点设备相连;交换芯片包括编号转换模块。

46、本实施例提供的主机与端点设备通信系统,利用交换芯片中的编号转换模块对各种报文中的本地域编号转换为全局域编号,将全局域编号转换为本地域编号。利用全局域编号作为中介,实现报文在主机和端点设备之间的顺利传输,降低多主机互操作的实现难度和实现成本。仅需要实现每个本地域至全局域之间的互操作,就可以实现全部的本地域互操作,可以大幅度减少本地域互操作的组合。解决了利用大量非透明桥实现主机与端点设备的跨域通信,导致芯片的复杂程度高、芯片成本大的问题。


技术特征:

1.一种交换芯片,其特征在于,所述交换芯片的上行端口用于与第一预设数量个主机相连,所述交换芯片的下行端口用于与第二预设数量个端点设备相连;所述交换芯片包括编号转换模块;

2.根据权利要求1所述的交换芯片,其特征在于,所述编号转换模块还用于:

3.根据权利要求1所述的交换芯片,其特征在于,所述交换芯片还包括:全局域编号分配模块、第三预设数量个上行桥设备以及第四预设数量个下行桥设备;

4.根据权利要求3所述的交换芯片,其特征在于,所述全局域编号分配模块从所述上行桥设备获取所述配置空间读写指令,包括:

5.根据权利要求3所述的交换芯片,其特征在于,所述全局域编号分配模块还用于:

6.根据权利要求3所述的交换芯片,其特征在于,所述第三预设数量个所述下行桥设备用于生成第四预设数量个下行桥设备分组;

7.根据权利要求2所述的交换芯片,其特征在于,所述编号转换模块还用于:

8.根据权利要求5所述的交换芯片,其特征在于,所述编号转换模块将所述第一请求报文中的第一请求者本地域编号转换为第一请求者全局域编号,包括:

9.根据权利要求5所述的交换芯片,其特征在于,所述编号转换模块将所述第一请求报文中的第一请求者本地域编号转换为第一请求者全局域编号,包括:

10.一种主机与端点设备通信系统,其特征在于,所述系统包括:第一预设数量个主机、第二预设数量个端点设备以及交换芯片,所述交换芯片为权利要求1至9中任一项所述的交换芯片;


技术总结
本发明涉及芯片设计技术领域,公开了一种交换芯片、主机与端点设备通信系统,交换芯片的编号转换模块获取主机发送的第一请求报文,将第一请求报文中的第一请求者本地域编号转换为第一请求者全局域编号,将转换后的第一请求报文发送至第一请求报文中第一目标端点设备地址对应的第一端点设备;获取第一端点设备发送的第一响应报文,如果第一响应报文包括第一请求者全局域编号,将第一响应报文中的第一请求者全局域编号转换为第一请求者本地域编号,第一应答者全局域编号转换为第一应答者本地域编号,将转换后的第一响应报文发送至对应的主机。解决了利用大量非透明桥实现主机与端点设备的跨域通信,导致芯片的复杂程度高、芯片成本大的问题。

技术研发人员:李树青,孙华锦,袁涛,石俊斌
受保护的技术使用者:山东云海国创云计算装备产业创新中心有限公司
技术研发日:
技术公布日:2024/11/11
转载请注明原文地址: https://tieba.8miu.com/read-13279.html

最新回复(0)