System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 多报文共享总线的方法、装置和网络芯片制造方法及图纸_技高网

多报文共享总线的方法、装置和网络芯片制造方法及图纸

技术编号:40016544 阅读:10 留言:0更新日期:2024-01-16 16:05
本申请提供一种多报文共享总线的方法、装置和网络芯片,通过将总线拆分为多组宽度相等的子总线,将获取到的来自同一数据通道的报文按照子总线的宽度切分为报文分片,利用多组子总线进行报文分片的传输,可以实现多报文共享总线的目的,并且,相应地进行了数据存储器的设置,结合报文分片的传输和缓存,可以大幅提高总线的传输带宽的同时,还具备物理开销小、扩展性强的优点。

【技术实现步骤摘要】

本专利技术涉及网络芯片,具体而言,涉及一种多报文共享总线的方法、装置和网络芯片


技术介绍

1、在高密度网络芯片中,存在大量的数据包存储-调度需求。在网络芯片中,存储器的位宽与输入信号的总线位宽都是一个固定的长度,假设一个报文的真实长度为l(单位byte),而传输报文的总线位宽为w(单位byte),则该报文将被切分为n个分片:n=int(l/w),其中,int为向上取整函数。网络芯片中的报文由媒体存取控制位址(media accesscontrol,mac)汇聚而来,可以理解为一个长报文,将按照l0、l1、…ln-1的顺序写进存储器。可以约定l0的报文携带sop(start of packet,报文起点)标志位,ln-1的报文携带eop(endof packet,报文终点)标志位。当sop和eop标志位都无效的部分,称之为body(报文中间)。可以看出,当报文长度小于或等于w时,只有一个分片,该分片同时携带sop/eop标志位。当l等于3个w时,会产生sop\body\eop三个分片。

2、根据总线上报文最大传输速率的计算公式可知,当l为w的整数倍时,总线利用率最高,总线传输的总带宽也越高。当l为w的整数倍+1时,总线利用率最低,总带宽相比w的整数倍发生大幅下降。造成这种现象的原因在于多报文无法共享总线,总线在一个周期内仅能被单一报文所占用,因而会出现若报文长度l略大于总线位宽w的情况下,总线利用率极低的现象。


技术实现思路

1、本专利技术的目的包括,例如,提供了一种多报文共享总线的方法、装置和网络芯片,其能够提高总线的传输带宽的同时,具备物理开销小、扩展性强等优点。

2、本专利技术的实施例可以这样实现:

3、第一方面,本专利技术提供一种多报文共享总线的方法,应用于网络芯片,所述网络芯片中的总线拆分为多组宽度相等的子总线,所述网络芯片包括多块数据存储器,各所述数据存储器的宽度与各所述子总线的宽度相等,所述方法包括:

4、响应总线请求,将获取到的来自同一数据通道的报文按照各所述子总线的宽度切分为报文分片,并利用多组子总线进行报文分片的传输,其中,各所述子总线具有有效标志位,所述有效标志位用于表征所述子总线上当前是否有报文分片进行传输;

5、根据当前的数据通道的写偏移以及各所述子总线的有效标志位将各个报文分片写入数据存储器中,并记录各所述报文分片写入数据存储器的地址以及编号;

6、根据当前的数据通道的链表偏移以及各所述子总线的有效标志位确定链表链接操作方式,并根据各所述报文分片写入数据存储器的地址以及编号得到链表地址;

7、根据所述链表地址和链表链接操作方式执行链表操作,以更新链表控制模块。

8、在可选的实施方式中,所述链表控制模块包括通道读状态表项,所述通道读状态表项存储数据通道的读地址和读偏移;

9、所述方法还包括:

10、根据待读取的数据通道的通道编号索引所述通道读状态表项,基于所述数据通道的读偏移确定待读取的数据存储器,从确定出的待读取的数据存储器中进行报文分片的读取。

11、在可选的实施方式中,所述链表控制模块还包括头指针存储器、尾指针存储器和链表存储器;

12、所述方法还包括:

13、基于待读取的数据通道的通道编号索引所述头指针存储器和尾指针存储器,获得头指针和尾指针;

14、在所述头指针与所述尾指针相等的情况下,将所述数据通道的通道读状态置为0;

15、在所述头指针与所述尾指针不相等的情况下,根据所述头指针访问所述链表存储器得到下一跳指针,将所述下一跳指针作为值、所述通道编号作为地址写入所述头指针存储器。

16、在可选的实施方式中,所述子总线包括第一子总线和第二子总线,所述第一子总线的传输优先级高于所述第二子总线,所述数据存储器包括第一数据存储器和第二数据存储器,所述网络芯片中具有通道写状态表项,所述通道写状态表项包括写地址、写偏移和链接偏移;

17、所述根据当前的数据通道的写偏移以及各所述子总线的有效标志位将各个报文分片写入数据存储器中,并记录各所述报文分片写入数据存储器的地址以及编号的步骤,包括:

18、在当前的数据通道的写偏移为0的情况下,获取一新的空闲地址,若所述第一子总线的有效标志位表征有效、所述第二子总线的有效标志位表征无效,使用所述新的空闲地址作为写地址以将所述第一子总线上的报文分片写入所述第一数据存储器,并将所述写偏移更新为1;

19、若所述第一子总线和第二子总线的有效标志位均表征有效,使用所述新的空闲地址作为写地址将所述第一子总线上的报文分片写入所述第一数据存储器、将所述第二子总线上的报文分片写入所述第二数据存储器;

20、在当前的数据通道的写偏移为1的情况下,若所述第一子总线的有效标志位表征有效、所述第二子总线的有效标志位表征无效,使用所述通道写状态表项中的写地址将所述报文分片写入所述第一数据存储器,并将所述写偏移更新为0;

21、若所述第一子总线和第二子总线的有效标志位均表征有效,获取一新的空闲地址,使用所述通道写状态表项中的写地址将所述报文分片写入所述第一数据存储器、使用所述新的空闲地址作为写地址将所述第二子总线上的报文分片写入所述第二数据存储器,并将所述通道写状态表项中的写地址更新为所述新的空闲地址。

22、在可选的实施方式中,所述根据当前的数据通道的链表偏移以及各所述子总线的有效标志位确定链表链接操作方式的步骤,包括:

23、在当前的数据通道的链表偏移为0的情况下,若所述第一子总线的有效标志位表征有效、第二子总线的有效标志位表征无效,在报文结尾标志位为0时,确定不执行链表链接操作,在报文结尾标志位为1时,确定对所述第一子总线上的报文分片执行链表链接操作;

24、若所述第一子总线和第二子总线的有效标志位均表征有效,在各自的报文结尾标志位均为0时,确定对所述第二子总线上的报文分片执行链表链接操作,在所述第一子总线的报文结尾标志位为1、第二子总线上的报文结尾标志位为0,确定对所述第一子总线上的报文分片执行链表链接操作,在所述第一子总线的报文结尾标志位为0、第二子总线上的报文结尾标志位为1,确定对所述第二子总线上的报文分片执行链表链接操作,在各自的报文结尾标志位均为1时,确定对所述第一子总线和第二子总线上的报文分片执行链表链接操作。

25、在可选的实施方式中,所述根据当前的数据通道的链表偏移以及各所述子总线的有效标志位确定链表链接操作方式的步骤,包括:

26、在当前的数据通道的链表偏移为1的情况下,若所述第一子总线的有效标志位表征有效、第二子总线的有效标志位表征无效,在报文结尾标志位为0或1时,确定对所述第一子总线上的报文分片执行链表链接操作;

27、若所述第一子总线和第二子总线的有效标志位均表征有效,在各自的报文结尾标志位均为0或所述第一子总线的报文结尾标志位为1且第二子总线本文档来自技高网...

【技术保护点】

1.一种多报文共享总线的方法,其特征在于,应用于网络芯片,所述网络芯片中的总线拆分为多组宽度相等的子总线,所述网络芯片包括多块数据存储器,各所述数据存储器的宽度与各所述子总线的宽度相等,所述方法包括:

2.根据权利要求1所述的多报文共享总线的方法,其特征在于,所述链表控制模块包括通道读状态表项,所述通道读状态表项存储数据通道的读地址和读偏移;

3.根据权利要求2所述的多报文共享总线的方法,其特征在于,所述链表控制模块还包括头指针存储器、尾指针存储器和链表存储器;

4.根据权利要求1所述的多报文共享总线的方法,其特征在于,所述子总线包括第一子总线和第二子总线,所述第一子总线的传输优先级高于所述第二子总线,所述数据存储器包括第一数据存储器和第二数据存储器,所述网络芯片中具有通道写状态表项,所述通道写状态表项包括写地址、写偏移和链接偏移;

5.根据权利要求4所述的多报文共享总线的方法,其特征在于,所述根据当前的数据通道的链表偏移以及各所述子总线的有效标志位确定链表链接操作方式的步骤,包括:

6.根据权利要求5所述的多报文共享总线的方法,其特征在于,所述根据当前的数据通道的链表偏移以及各所述子总线的有效标志位确定链表链接操作方式的步骤,包括:

7.根据权利要求6所述的多报文共享总线的方法,其特征在于,所述链表控制模块包括存有通道读状态的通道读状态表项、头指针存储器、尾指针存储器和链表存储器;

8.根据权利要求7所述的多报文共享总线的方法,其特征在于,所述根据所述链表地址和链表链接操作方式执行链表操作,以更新链表控制模块的步骤,包括:

9.一种多报文共享总线的装置,其特征在于,应用于网络芯片,所述网络芯片中的总线拆分为多组宽度相等的子总线,所述网络芯片包括多块数据存储器,各所述数据存储器的宽度与各所述子总线的宽度相等,所述装置包括:

10.一种网络芯片,其特征在于,包括一个或多个存储介质和一个或多个与存储介质通信的处理器,一个或多个存储介质存储有处理器可执行的机器可执行指令,当网络芯片运行时,处理器执行所述机器可执行指令,以执行权利要求1-8中任意一项所述的方法。

...

【技术特征摘要】

1.一种多报文共享总线的方法,其特征在于,应用于网络芯片,所述网络芯片中的总线拆分为多组宽度相等的子总线,所述网络芯片包括多块数据存储器,各所述数据存储器的宽度与各所述子总线的宽度相等,所述方法包括:

2.根据权利要求1所述的多报文共享总线的方法,其特征在于,所述链表控制模块包括通道读状态表项,所述通道读状态表项存储数据通道的读地址和读偏移;

3.根据权利要求2所述的多报文共享总线的方法,其特征在于,所述链表控制模块还包括头指针存储器、尾指针存储器和链表存储器;

4.根据权利要求1所述的多报文共享总线的方法,其特征在于,所述子总线包括第一子总线和第二子总线,所述第一子总线的传输优先级高于所述第二子总线,所述数据存储器包括第一数据存储器和第二数据存储器,所述网络芯片中具有通道写状态表项,所述通道写状态表项包括写地址、写偏移和链接偏移;

5.根据权利要求4所述的多报文共享总线的方法,其特征在于,所述根据当前的数据通道的链表偏移以及各所述子总线的有效标志位确定链表链接操作方式的步骤,包括:<...

【专利技术属性】
技术研发人员:徐子轩夏杰熊毅鹏
申请(专利权)人:苏州盛科通信股份有限公司
类型:发明
国别省市:

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

1