首页  专利技术  电子电路装置的制造及其应用技术

一种基于PCIe协议传输写响应信息的系统、方法和装置与流程

2026-06-05 12:00:06 425次浏览
一种基于PCIe协议传输写响应信息的系统、方法和装置与流程

本发明涉及芯片,具体地说,涉及一种基于pcie协议传输写响应信息的系统、方法和装置。


背景技术:

1、目前,伴随着gpu(图形处理器)芯片技术及应用的蓬勃发展,特别是在深度学习,科学计算和大规模图形渲染等领域应用的迅猛增长,对于多gpu协同工作的需求急剧上升,多芯片互联的需求也与日俱增.

2、当前在芯片技术领域存在cpu和gpu芯片的互联解决方案,尤其是pcie协议最为成熟可靠;pcie协议数据传输速率,低延迟,稳定性,灵活性和可拓展性等方面表现卓越,更易于适应不同应用场景和需求变化.

3、但是,pcie协议在用作多gpu芯片互联时,其在数据通路的传输中存在一些限制,主要问题体现在协议层面的适配性不足,以当前业界比较常用的芯片片上网络总线接口axi、apb等来说,这些接口协议都需要实现写响应信息的传递,而由于pcie协议本身并不是为芯片互联而设计的,其天然无法支持写响应信息的传递,直接应用pcie协议控制器作为片上网络总线的互联装置会存在数据传输层面的缺陷。因此,提供一种基于pcie协议传输写响应信息的系统、方法和装置。


技术实现思路

1、本发明的目的在于提供一种基于pcie协议传输写响应信息的系统、方法和装置,以解决上述背景技术中提出的pcie协议控制器作为片上网络总线的互联装置会存在数据传输层面的缺陷的问题。

2、为实现上述目的,本发明目的在于提供了基于pcie协议传输写响应信息的系统,包括:

3、axi总线发送端,所述axi总线发送端通过地址通道ar发出内存读写请求,携带目标地址和相关的控制信息,并随后通过写数据通道w发送数据,在完成写操作后,由写响应通道b接收目标设备返回的写响应信号,确认写入是否成功;

4、接口控制器模块,所述接口控制器模块用于实现不同协议之间的转换以及对读写请求、响应的仲裁和处理;

5、其中,接口控制器模块包括发送端接口控制模块和接收端接口控制模块;

6、pcie控制器,所述pcie控制器用于将axi协议的读写请求和响应信号适配并转换为pcie协议的数据包格式,以便在基于pcie的系统间进行高效的数据传输;

7、其中,所述pcie控制器包括发送通道和接收通道;

8、axi总线接收端,所述axi总线接收端用于接收到通过pcie协议转换过来的写请求和写数据,并执行对应的数据写入操作,当写操作完成后,axi总线接收端生成写响应信号并将其通过接口控制器模块传回给发起请求的axi总线主设备。

9、作为本技术方案的进一步改进,所述发送端接口控制模块包括baw转b模块、写请求仲裁器、写响应转写请求模块a和写请求转写响应模块a;

10、其中,baw转b模块用于从pcie的写请求数据包(mwr tlp)中提取出携带写响应信息的写请求baw,并将baw转换回写响应(b response)返回给发起端总线的写响应通道b,由写请求仲裁器合并发送正常的写请求aw以及本段写带写响应信息的写请求baw;当pcie控制器针对某个写请求操作给出本地响应(local ack)时,写响应转写请求模块a将这个本地ack信息嵌入到一个新的写请求包中,生成携带响应信息的写请求baw数据包,并通过pcie接口将其发送至对端系统,使得对端能够获取到本次写操作的状态反馈,最后,写请求转写响应模块a负责对接收到的全部pcie写请求数据包进行筛选和处理,识别携带写响应信息的写请求baw数据包,并从中抽取对应的写响应内容,经过格式转换还原成axi协议下的写响应(b response)。这一转换后的写响应随后会被提交给写响应仲裁器,由写响应仲裁器统一调度并最终送达发起端的本地总线,从而完成了整个闭环的响应信息传输过程。

11、作为本技术方案的进一步改进,所述接收端接口控制模块包括b转baw模块、写响应仲裁器、写响应转写请求模块b和写请求转写响应模块b;

12、其中,当接收端接口控制模块接收到通过pcie链路传输过来的标准写响应(bresponse)时,b转baw模块将接收端总线返回的写响应(b response)转换成一笔写请求(awrequest)并映射到pcie的写请求数据包(mwr tlp)发送给发起端,随后,经由b转baw模块转化后产生的baw数据进入写响应仲裁器,写响应仲裁器用于负责管理和调度所有的写响应(b response)以及转换后的baw数据包,确保在多源并发情况下,能够按照预设的优先级或规则,准确、及时地将合适的写响应反馈给本地总线,仲裁器还需要与其他模块有效同步,以便正确判断何时应该将写响应转换为baw形式传输;写响应转写请求模块b将本地设备对已接收写请求的确认信号转化为新的写请求,并附带相关响应信息,生成baw数据包,将本地设备的完成状态反馈回发起端,维持pcie链路通信的双向性和完整性,写请求转写响应模块b用于解耦来自对端系统的baw数据包,从中提取出原始的写响应信息,并将其转换回符合axi或其他本地总线协议的写响应格式(b response);然后,重构后的写响应会被送至本地总线,通知相应组件关于之前写操作的结果;

13、其中,携带写响应信息的写请求被称为baw。

14、作为本技术方案的进一步改进,所述发送通道用于发起读返回、读请求和写请求;

15、其中,读返回用于pcie控制器从目标设备读取数据后,将数据打包成读返回数据包(cpld tlp),并通过发送通道发送回发起端;

16、当总线发起一个读请求时,pcie控制器将该请求转换为pcie协议的读请求数据包(mrd tlp);

17、当总线发起一个写请求时,pcie控制器会将该请求转换为pcie协议的写请求数据包(mwr tlp)。

18、作为本技术方案的进一步改进,所述接收通道用于发起写请求、读请求和读返回;

19、其中,当pcie控制器接收到一个写请求数据包(mwr tlp)时,写请求将该数据包解封装,并将其转换为总线协议的写请求,将数据包中的地址和数据信息提取出来,并将其发送给总线上的目标设备;

20、当pcie控制器接收到一个读请求数据包(mrd tlp)时,读请求将该数据包解封装,并将其转换为总线协议的读请求;pcie控制器将数据包中的地址信息提取出来,并将其发送给总线上的目标设备;

21、当pcie控制器接收到一个读返回数据包(cpld tlp)时,读返回将该数据包解封装,并将其转换为总线协议的读返回;pcie控制器将数据包中的数据信息提取出来,并将其发送给发起读请求的设备。

22、另一方面,本发明提供了一种基于pcie协议传输写响应信息的方法,用于上述任意一项所述的一种基于pcie协议传输写响应信息的系统,包括如下步骤:

23、s1、读请求的处理流程具体为:

24、s1.1、发起侧总线接口向对端芯片发送一笔读请求;读地址为0x1000,长度为1,读请求号(arid)为1;其中,发起侧总线接口为axi总线发送端或axi总线接收端;

25、s1.2、接口控制器模块将相应的axi读请求信息映射到pcie读请求数据包(mrdtlp)的对应位域上并发送给对面;axi读请求地址可以直接映射到pcie读请求数据包(mrdtlp)的地址位域上,axi读请求长度会映射到mrd tlp包的长度位域上.读请求号(arid)无需传递给对面;

26、s1.3、对端接口控制器模块做相反处理,即将pcie读请求数据包(mrd tlp)转换回axi读请求并发送给对端总线接口;读地址为0x1000,长度为1,读请求号(arid)为a(对端使用的arid与发起侧可以不同);其中,对端接口控制器模块为发送端接口控制模块或接收端接口控制模块;

27、s1.4、对端接口控制器模块等待对端总线接口的读响应,并映射到pcie读响应数据包(cpld)的对应位域并返回;读响应数据为0xffff,读响应号(rid)为a(对应步骤s1.3中的arid);

28、s1.5、发起侧接口控制模块等待对端返回的cpld包,并转换成axi的写响应返回给发起测总线接口;读响应数据为0xffff,读响应号(rid)为1(对应步骤s1.1中的arid);发起侧接口控制模块为发送端接口控制模块或接收端接口控制模块;

29、s2、写请求的处理流程具体为:

30、s2.1、发起侧总线接口向对端芯片发起一笔写请求;写地址为0x1000,写数据为0xffff,写长度为1,写请求号(awid)为2;

31、s2.2、接口控制模块将相应的axi写请求信息映射到pcie写请求数据包(mwr tlp)的对应位域上并发送给对面;其中写地址、写数据和写长度都有一一对应的位域可以存放,而写请求号(awid)则需要通过数据包前缀(tlp prefix)的方式传递给对面;

32、s2.3、对端接口控制模块做相反处理,即将pcie写请求数据包(mwr tlp)转换回axi写请求并发送给对端总线接口;其发送给总线接口的写地址为0x1000,长度为1,写数据为0xffff,写请求号(awid)为b;

33、s2.4、对端的接口控制模块需要同时解析出存放在数据包前缀(tlp prefix)中发起端的awid信息,并存放其与本地awid的映射关系;

34、s2.5、对端控制模块等待并接收总线接口返回的写响应(该写响应的响应号bid为b,响应状态bresp为成功,响应自定义内容buser为0xabcd),并进行写响应到写请求的转换(b2baw),即将这笔axi总线的写响应转换成一笔携带特殊写响应信息的pcie写请求(mwrtlp),跟其他普通的pcie写请求一起发送回对端,这类携带特殊信息的写请求被称为baw;

35、s2.6、同时,对端控制器会根据之前记录的awid的映射关系反推响应号(b转2),并将响应号,响应状态,响应自定义内容存放到baw的包前缀(tlp prefix)中,baw剩余部分的信息可以封装成一笔地址固定的空写请求(zero-length write),即写地址为0x0,写数据为0x0,长度为0(位域fbe=0,lbe=0);

36、s2.7、发起端控制模块接收到对端控制模块的pcie写请求(mwr tlp),根据包前缀判断该笔mwr tlp包是一般写请求还是baw;

37、s2.8、如果是一般写请求则将写请求(mwr tlp)转换成axi接口的写请求并传递给总线接口;

38、s2.9、如果是一笔baw,则进行写请求转写响应(baw2b),控制模块将baw包中tlpprefix中相关的信息转换成axi的写响应信息并返回给发起侧总线接口,并确定响应状态;该写响应内容为响应号(bid)为2,响应状态(bresp)为成功,响应自定义内容(buser)为0xabcd。

39、作为本技术方案的进一步改进,所述发起侧总线接口为axi总线发送端或axi总线接收端。

40、作为本技术方案的进一步改进,所述对端接口控制器模块为发送端接口控制模块或接收端接口控制模块。

41、作为本技术方案的进一步改进,所述发起侧接口控制模块为发送端接口控制模块或接收端接口控制模块。

42、另一方面,本发明提供了一种基于pcie协议传输写响应信息的装置,包括储存器、处理器和存储在存储器内并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述中任意一项所述基于pcie协议传输写响应信息的方法的步骤。

43、与现有技术相比,本发明的有益效果:

44、一种基于pcie协议传输写响应信息的系统、方法和装置中,通过将写响应信息封装成特殊格式的pcie写数据包并在发送侧和接收侧做特殊处理和转换,发送端接口控制模块通过baw转b模块将本地ack信息转换成baw数据包发送给对端,对端接口控制模块接收到baw后,通过写请求转写响应模块将baw中的写响应信息提取出来,并转换回符合axi或其他本地总线协议的写响应格式(b response),然后再通过仲裁器协调,将正确的写响应返回给发起端的本地总线,实现了数据总线的写响应在pcie设备间的传递,用户在使用中无需考虑pcie协议层面对数据传输的限制,使得数据的传输更为通用且高效。

文档序号 : 【 40163154 】

技术研发人员:严帅,王爽,张丽君
技术所有人:沐曦集成电路(上海)有限公司

备 注:该技术已申请专利,仅供学习研究,如用于商业用途,请联系技术所有人。
声 明此信息收集于网络,如果你是此专利的发明人不想本网站收录此信息请联系我们,我们会在第一时间删除
严帅王爽张丽君沐曦集成电路(上海)有限公司
一种便于维护的电力检修装置的制作方法 一种集装箱运输半挂车侧护栏的制作方法
相关内容