System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及通信,特别是涉及一种基于多接口时隙调度的数据传输方法及网络芯片。
技术介绍
1、网络芯片(network processor,网络处理器)是一种可编程器件,用于执行通信领域的各种任务,比如包处理、协议分析、路由查找、防火墙、qos(quality of service,服务质量)等。网络芯片的出接口通常使用共享式fifo(first input first output,先入先出存储器)来存储待调度的数据。在使用共享式fifo存储待调度的数据时,需要考虑数据调度的策略,若不能及时调出数据,在共享式fifo的存储空间达到阈值后,会对上级模块造成反压,从而使得通路上的数据产生阻塞。
2、每一数据队列对应一个网络芯片的一个接口,每一接口连接一个fifo,每一数据队列中存储有需要向所对应接口连接的fifo传输的数据。为了向不同的fifo传输数据,需要为接口分配调度时隙,在为每一接口所分配的时隙中,通过该接口进行数据调度。相关技术中每一数据队列会连续占用一段时间,对时间的分配比较粗略,在较长的时间段内只能调度单个数据队列,对于转发流量很大的网络芯片,极可能造成堆积数据超出共享式fifo阈值,对上级模块产生反压。为此,需要提出一种基于多接口时隙调度的数据传输方法,以减少通路上的数据阻塞。
技术实现思路
1、本专利技术实施例的目的在于提供一种基于多接口时隙调度的数据传输方法及网络芯片,以减少数据阻塞。具体技术方案如下:
2、在本专利技术实施例的第一方面,首先
3、针对所述网络芯片的每一接口,根据该接口的带宽以及网络芯片的总带宽,计算该接口的时隙分配信息;其中,所述时隙分配信息包括:该接口的所需时隙数以及初始步长,所述初始步长为:该接口相邻的时隙之间间隔的时隙数;
4、针对所述网络芯片的每一接口,按照该接口的初始步长,确定所需时隙数和时隙的初始时域位置;
5、若初始时域位置为不存在已分配时隙的空闲位置,则将该时隙的初始时域位置确定为所分配的位置;
6、若初始时域位置不为空闲位置,则查找与所述初始时域位置最接近的空闲位置,作为该时隙所分配的位置;
7、按照为各接口的时隙分配的时域位置进行数据传输。
8、在一种可能的实施例中,针对所述网络芯片的每一接口,该接口的所需时隙数为该接口的带宽与时隙粒度之商,所述时隙粒度为:各接口带宽的最大公约数;
9、该接口的初始步长为:所述网络芯片的总带宽与该接口的带宽之商。
10、在一种可能的实施例中,非规则接口存在两种初始步长,分别为:所述网络芯片的总带宽与该接口带宽之商向上取整的第一步长,以及所述网络芯片的总带宽与该接口带宽之商向下取整的第二步长,所述非规则接口为:所述网络芯片的总带宽与接口的带宽之商为非整数的接口。
11、在一种可能的实施例中,非规则接口的时隙中第一数量的时隙之间的初始步长为第一步长,第二数量的时隙之间的初始步长为第二步长,其中,第一比例与第二比例互为倒数,所述第一比例为:第一数量与第二数量之比,所述第二比例为:所述第一步长与第二步长之比。
12、在一种可能的实施例中,针对所述网络芯片的每一接口,所述网络芯片分配时域位置后该接口的相邻时隙的间隔大于所述相邻时隙间初始步长的0.5倍,小于所述相邻时隙间初始步长的1.5倍。
13、在一种可能的实施例中,所述网络芯片按照接口的带宽由大到小的顺序依次为各接口的时隙分配时域位置。
14、在一种可能的实施例中,所述网络芯片的不同接口分别连接共享式fifo中的不同fifo。
15、在本专利技术实施例的第二方面,还提供了一种网络芯片,所述网络芯片用于:
16、针对所述网络芯片的每一接口,根据该接口的带宽以及网络芯片的总带宽,计算该接口的时隙分配信息;其中,所述时隙分配信息包括:该接口的所需时隙数以及初始步长,所述初始步长为:该接口相邻的时隙之间间隔的时隙数;
17、针对所述网络芯片的每一接口,按照该接口的初始步长,确定所需时隙数和时隙的初始时域位置;
18、若初始时域位置为不存在已分配时隙的空闲位置,则将该时隙的初始时域位置确定为所分配的位置;
19、若初始时域位置不为空闲位置,则查找与所述初始时域位置最接近的空闲位置,作为该时隙所分配的位置;
20、按照为各接口的时隙分配的时域位置进行数据传输。
21、在一种可能的实施例中,针对所述网络芯片的每一接口,该接口的所需时隙数为该接口的带宽与时隙粒度之商,所述时隙粒度为:各接口带宽的最大公约数;
22、该接口的初始步长为:所述网络芯片的总带宽与该接口的带宽之商。
23、在一种可能的实施例中,非规则接口存在两种初始步长,分别为:所述网络芯片的总带宽与该接口带宽之商向上取整的第一步长,以及所述网络芯片的总带宽与该接口带宽之商向下取整的第二步长,所述非规则接口为:所述网络芯片的总带宽与接口的带宽之商为非整数的接口。
24、在一种可能的实施例中,非规则接口的时隙中第一数量的时隙之间的初始步长为第一步长,第二数量的时隙之间的初始步长为第二步长,其中,第一比例与第二比例互为倒数,所述第一比例为:第一数量与第二数量之比,所述第二比例为:所述第一步长与第二步长之比。
25、在一种可能的实施例中,针对所述网络芯片的每一接口,所述网络芯片分配时域位置后该接口的相邻时隙的间隔大于所述相邻时隙间初始步长的0.5倍,小于所述相邻时隙间初始步长的1.5倍。
26、在一种可能的实施例中,所述网络芯片按照接口的带宽由大到小的顺序依次为各接口的时隙分配时域位置。
27、在一种可能的实施例中,所述网络芯片的不同接口分别连接共享式fifo中的不同fifo。
28、本专利技术实施例有益效果:
29、本专利技术实施例提供的基于多接口时隙调度的数据传输方法,针对网络芯片的每一接口,根据该接口的带宽以及网络芯片的总带宽,可以计算出该接口的所需时隙数以及初始步长,根据该接口的初始步长,可以确定所需时隙数和时隙的初始时域位置。
30、若初始时域位置为不存在已分配时隙的空闲位置,说明该初始时域位置未被占用,则将该时隙的初始时域位置确定为所分配的位置;若初始时域位置不为空闲位置,说明该初始时域位置已被占用,则查找与初始时域位置最接近的空闲位置,作为该时隙所分配的位置,从而按照为各接口的时隙分配的时域位置进行数据传输。由于每一接口的所需时隙数和时隙的初始时域位置是通过该接口的带宽以及网络芯片的总带宽确定的,因此,按照为各接口的时隙分配的时域位置进行数据传输,可以均匀地调度每个接口的数据,避免由于短时间的流量过大而导致接口不能及时接收数据,从而有效减少数据阻塞。
31、并且,由于在初始时域位置不为空闲位置的情况下,可以查找与初本文档来自技高网...
【技术保护点】
1.一种基于多接口时隙调度的数据传输方法,其特征在于,应用于网络芯片,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,针对所述网络芯片的每一接口,该接口的所需时隙数为该接口的带宽与时隙粒度之商,所述时隙粒度为:各接口带宽的最大公约数;
3.根据权利要求2所述的方法,其特征在于,非规则接口存在两种初始步长,分别为:所述网络芯片的总带宽与该接口带宽之商向上取整的第一步长,以及所述网络芯片的总带宽与该接口带宽之商向下取整的第二步长,所述非规则接口为:所述网络芯片的总带宽与接口的带宽之商为非整数的接口。
4.根据权利要求3所述的方法,其特征在于,非规则接口的时隙中第一数量的时隙之间的初始步长为第一步长,第二数量的时隙之间的初始步长为第二步长,其中,第一比例与第二比例互为倒数,所述第一比例为:第一数量与第二数量之比,所述第二比例为:所述第一步长与第二步长之比。
5.根据权利要求1-4中任一项所述的方法,其特征在于,针对所述网络芯片的每一接口,所述网络芯片分配时域位置后该接口的相邻时隙的间隔大于所述相邻时隙间初始步长的0.5倍,小于所
6.根据权利要求1-4中任一项所述的方法,其特征在于,所述网络芯片按照接口的带宽由大到小的顺序依次为各接口的时隙分配时域位置。
7.根据权利要求1-4中任一项所述的方法,其特征在于,所述网络芯片的不同接口分别连接共享式先入先出存储器FIFO中的不同FIFO。
8.一种网络芯片,其特征在于,所述网络芯片用于:
9.根据权利要求8所述的网络芯片,其特征在于,针对所述网络芯片的每一接口,该接口的所需时隙数为该接口的带宽与时隙粒度之商,所述时隙粒度为:各接口带宽的最大公约数;
10.根据权利要求9所述的网络芯片,其特征在于,非规则接口存在两种初始步长,分别为:所述网络芯片的总带宽与该接口带宽之商向上取整的第一步长,以及所述网络芯片的总带宽与该接口带宽之商向下取整的第二步长,所述非规则接口为:所述网络芯片的总带宽与接口的带宽之商为非整数的接口。
11.根据权利要求10所述的网络芯片,其特征在于,非规则接口的时隙中第一数量的时隙之间的初始步长为第一步长,第二数量的时隙之间的初始步长为第二步长,其中,第一比例与第二比例互为倒数,所述第一比例为:第一数量与第二数量之比,所述第二比例为:所述第一步长与第二步长之比。
12.根据权利要求8-11中任一项所述的网络芯片,其特征在于,针对所述网络芯片的每一接口,所述网络芯片分配时域位置后该接口的相邻时隙的间隔大于所述相邻时隙间初始步长的0.5倍,小于所述相邻时隙间初始步长的1.5倍。
13.根据权利要求8-11中任一项所述的网络芯片,其特征在于,所述网络芯片按照接口的带宽由大到小的顺序依次为各接口的时隙分配时域位置。
14.根据权利要求8-11中任一项所述的网络芯片,其特征在于,所述网络芯片的不同接口分别连接共享式先入先出存储器FIFO中的不同FIFO。
...【技术特征摘要】
1.一种基于多接口时隙调度的数据传输方法,其特征在于,应用于网络芯片,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,针对所述网络芯片的每一接口,该接口的所需时隙数为该接口的带宽与时隙粒度之商,所述时隙粒度为:各接口带宽的最大公约数;
3.根据权利要求2所述的方法,其特征在于,非规则接口存在两种初始步长,分别为:所述网络芯片的总带宽与该接口带宽之商向上取整的第一步长,以及所述网络芯片的总带宽与该接口带宽之商向下取整的第二步长,所述非规则接口为:所述网络芯片的总带宽与接口的带宽之商为非整数的接口。
4.根据权利要求3所述的方法,其特征在于,非规则接口的时隙中第一数量的时隙之间的初始步长为第一步长,第二数量的时隙之间的初始步长为第二步长,其中,第一比例与第二比例互为倒数,所述第一比例为:第一数量与第二数量之比,所述第二比例为:所述第一步长与第二步长之比。
5.根据权利要求1-4中任一项所述的方法,其特征在于,针对所述网络芯片的每一接口,所述网络芯片分配时域位置后该接口的相邻时隙的间隔大于所述相邻时隙间初始步长的0.5倍,小于所述相邻时隙间初始步长的1.5倍。
6.根据权利要求1-4中任一项所述的方法,其特征在于,所述网络芯片按照接口的带宽由大到小的顺序依次为各接口的时隙分配时域位置。
7.根据权利要求1-4中任一项所述的方法,其特征在于,所述网络芯片的不同接口分别连接共享式先入先出存储器fifo中的不同fifo。
<...【专利技术属性】
技术研发人员:周望,秦海洋,
申请(专利权)人:新华三半导体技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。