一种缓存信元数据的方法、装置和设备的制造方法_3

文档序号:8528127阅读:来源:国知局
择的并行信元块的宽度为8。在下一个传输时隙,从S2P单元缓存的各传输队列中选择第四传输队列、第五传输队列和第六传输队列,并分别从第四传输队列、第五传输队列和第六传输队列中分别选择一个并行信元块,以此类推。
[0100]再如,以预设数值为2为例进行说明,则在当前传输时隙,从S2P单元缓存的各传输队列中选择第一传输队列和第二传输队列,从第一传输队列中选择一个并行信元块,例如从第一传输队列中选择的并行信元块的宽度为2,从第二传输队列中选择一个并行信元块,例如从第二传输队列中选择的并行信元块的宽度为7。在下一个传输时隙,从S2P单元缓存的各传输队列中选择第三传输队列和第四传输队列,并分别从第三传输队列和第四传输队列中选择一个并行信元块,以此类推。
[0101]步骤302:从该预设数值个并行信元块中获取宽度之和小于或等于与该S2P单元连接的并行总线宽度的多个并行信元块;
[0102]从该预设数值个并行信元块中任一选择一个并行信元块,从该预设数值个并行信元块中未选择的并行信元块中找出与该选择的并行信元块宽度之和小于或等于与该S2P单元连接的并行总线宽度的一个或多个并行信元块。
[0103]如果该预设数值个并行信元块中存在多组宽度之和小于或等于该并行总线宽度的并行信元块,则从多组并行信元块中选择宽度之和最大的一组并行信元块。如果存在宽度之和相等的多组并行信元块,则可以随机选择一组,或者选择一组宽度之差最大的一组并行信元块。
[0104]例如,并行总线宽度为10,该预设数值个并行信元块中存在两组宽度之和小于或等于并行总线宽度的并行信元块,分别为{2,7}和{2,8},从两组中选择并行信元块的宽度之和最大的一组并行信元块为{2,8}。
[0105]再如,该预设数值个并行信元块中存在两组宽度之和小于或等于并行总线宽度的并行信元块,分别为{3,7}和{2,8},这两组并行信元块宽度之和相等,则从这两组并行信元块中选择宽度之差最大的一组并行信元块为{2,8}。
[0106]在本步骤中,也可以直接确定该预设数值个并行信元块宽度之和是否小于或等于该并行总线宽度,如果是,则直接选择该预设数值个并行信元块,执行步骤303。如果不是,则从该预设数值个并行信元块中获取宽度之和小于或等于该并行总线宽度的多个并行信元块。
[0107]例如,并行总线宽度为10,该预设数值个并行信元块的宽度分别为6和4,确定这两个并行信元块的宽度之和正好等于并行总线宽度,则直接选择这两个并行信元块,执行步骤303。
[0108]步骤303:将该多个并行信元块拼接为一个并行信元块;
[0109]将多个并行信元中的相邻两个并行信元块首尾进行连接,得到一个并行信元块。
[0110]例如,参见图3-2,将宽度分别为6和4的两个并行信元块进行拼接时,将宽度为6的并行信元块的首部与宽度为4的并行信元块的尾部进行连接得到一个宽度为10的并行信元块。
[0111]步骤304:将该拼接后的并行信元块通过该并行总线写入VCS芯片的第一缓存空间中;
[0112]在当前传输时隙,将该拼接后的并行信元块输出到该并行总线上,通过该并行总线将该拼接后的并行信元块写入VCS芯片的第一缓存空间中。
[0113]进一步地,VCS芯片从第一缓存空间中获取该拼接后的并行信元块,将该拼接后的并行信元块发送给VCS芯片包括的P2S单元,由P2S单元将该拼接后的并行信元块拆分为多个并行信元块,将该多个并行信元块转换为多个串行信元块,将该多个串行信元块发送给目的节点。
[0114]步骤305:将该预设数值个并行信元块中未选择的并行信元块中宽度小于该并行总线宽度的并行信元块写入VCS芯片的第二缓存空间中。
[0115]从该预设数值个并行信元块中未选择的并行信元块中获取宽度小于并行总线宽度的并行信元块;将获取的并行信元块写入VCS芯片的第二缓存空间中。
[0116]其中,VCS芯片的第二缓存空间用于暂时缓存该预设数值个并行信元块中未写入VCS芯片的第一缓存空间的并行信元块。
[0117]由于宽度较大的并行信元块可能不太好找到与该并行信元块宽度之和小于或等于该并行总线宽度的并行信元块,因此,在本步骤中也可以设定一个预设宽度,只将该预设数值个并行信元块中未选择的并行信元块中宽度小于预设宽度的并行信元块存储在VCS芯片的第二缓存空间中。
[0118]因此,本步骤可以为从该预设数值个并行信元块中未选择的并行信元块中获取宽度小于预设宽度的并行信元块,将获取的并行信元块写入VCS芯片的第二缓存空间中。
[0119]预设宽度小于并行总线宽度,且预设宽度可以根据需要进行设置;例如,预设宽度可以为并行总线宽度的一半等。
[0120]进一步地,将该预设数值个并行信元块中未选择的并行信元块继续存储在该S2P单元缓存的传输队列中。
[0121]进一步地,为了避免并行信元块传输时延过大,甚至出现并行信元块一直缓存在第二缓存空间中发不出去的情况,当检测到第二缓存空间中的并行信元块的缓存时长达到预设时长时,从VCS芯片的第二缓存空间中获取缓存时长达到预设时长的并行信元块;将获取的并行信元块写入VCS芯片的第一缓存空间中。
[0122]进一步地,如果VCS芯片的第二缓存空间中存在宽度小于该并行总线宽度的至少一个并行信元块时,如果该预设数值个并行信元块中不存在宽度之和小于或等于该并行总线宽度的多个并行信元块时,可以从该预设数值个并行信元块和VCS芯片的第二缓存空间中获取宽度之和小于或等于该并行总线宽度的多个并行信元块。
[0123]进一步地,如果该预设数值个并行信元块和VCS芯片的第二缓存空间中存在多组宽度之和小于或等于该并行总线宽度的并行信元块,则从多组并行信元块中选择包含缓存时长最长的并行信元块的一组并行信元块,将该选择的并行信元块组包括的并行信元块拼接为一个并行信元块,将该拼接后的并行信元块通过并行总线写入VCS芯片的第一缓存空间中,从而能够减少并行信元块的传输时延。
[0124]在本发明实施例中通过拼接并行信元块,能够减少VCS芯片的时钟频率,具体验证如下:
[0125]例如,VCS芯片包括X= 14个S2P单元,并行总线宽度N为120,信元数据的长度为S的范围为80?120,每个S2P单元的速率为30,VCS芯片的时钟频率为F,则并行总线传输速率与S2P单元的速率的比例speed-up可以通过如下公式(I)计算得到:
[0126]Speed-up = (F*S)/(X*R*125*CEIL(S/N,I)) (I)
[0127]其中,CEIL(S/N, I)表示将S/N为基数向上取整。
[0128]当speed-up大于或等于1,则表示对于长度为S的信元,并行总线的传输能力满足入口的带宽需求,否则不满足。
[0129]在本发明实施例中,如果将每个并行信元块以一个传输时隙写入VCS芯片的第一缓存空间时,F等于830MHZ的时钟频率才能保证所有并行信元块的speed-up都大于I。如果采用本发明实施例提供的方法将宽度之和小于或等于并行总线宽度的多个并行信元块拼接为一个并行信元块,将拼接的并行信元块以一个传输时隙写入VCS芯片的第一缓存空间时,F等于660MHZ的时钟频率就能保证所有并行信元块的speed-up都大于I。因此,通过拼接并行信元块,能够节省VCS芯片的时钟频率。
[0130]在本发明实施例中,从S2P单元缓存的并行信元块中选择宽度之和小于或等于与该S2P单元连接的并行总线宽度的多个并行信元块;将该多个并行信元块拼接为一个并行信元块;将该拼接后的并行信元块写入该S2P单元所在的VCS芯片的第一缓存空间中。本发明通过拼接并行信元块,能够将多个并行信元块占用一个传输时隙写入VCS芯片的第一缓存空间中,节省了传输时隙,提高了传输时隙的利用率。
[0131]实施例4
[0132]本发明实施例提供了一种缓存信元数据的方法,该方法的执行主体可以为S2P单元或者S2P单元包括的调度器等。参见图4,其中,该方法包括:
[0133]步骤401:S2P单元在发送并行信元块时,确定VCS芯片的第二缓存空间中是否存在宽度之和小于或等于与S2P单元连接的并行总线宽度的多个并行信元块,如果存在,执行步骤402,如果不存在,执行步骤403 ;
[0134]其中,并行信元块是宽度小于或等于并行总线带宽且格式为并行格式的信元数据。
[0135]为了减少并行?目兀块的传输时延,先确定VCS芯片的第二缓存空间中是否存在宽度之和小于或等于与S2P单元连接的并行总线宽度的多个并行信元块,如果存在,优先从第二缓存空间中获取宽度之和小于或等于该并行总线宽度的多个并行信元块,从而能够减少并行信元块的传输时延。如果不存在,再从该S2P单元缓存的传输队列中获取并行信元块。
[0136]步骤402:如果存在,则从第二缓存空间中获取宽度之和小于或等于该并行总线宽度的多个并行信元块,执行步骤405 ;
[0137]如果第二缓存空间中存在多组宽度之和小于或等
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1