信号发送方法、路由节点、存储介质及电子设备与流程
- 国知局
- 2024-09-05 14:20:47
本技术实施例涉及数据交换领域,具体而言,涉及一种信号发送方法、路由节点、存储介质及电子设备。
背景技术:
1、随着半导体技术的发展,越来越多的ip被集成到单一芯片上。因此片上网络的性能很大程度影响了芯片的整体性能。片上网络(network-on-chip,简称为noc)作为一种可扩展的片上结构,已经成为了解决片上系统间通讯的有效方案。但是noc的拓扑结构以及路由方法对性能有至关重要的影响,其中的路由节点其性能对整体noc的性能起到了关键作用。
2、目前noc中的路由节点通常由demux(demux是一种用于将一个信号拆分成多个信号的模块)和mux(多路复用器,是一种电子电路,它可以将多个信号输入组合成一个信号输出)两部分组成。每一个输入端口对应一个demux,每一个输出端口对应一个mux,其中demux的作用是解析路由地址,将访问报文发送向对应的输出端口对应的mux。mux会将多个来自不同输入端口demux的访问报文进行仲裁然后发送给输出端口。具体过程为:每个输入端口向自己对应的demux发送传输“请求(request)”信号,然后demux根据访问的地址将访问请求发送给对应输出端口的mux,mux通过仲裁器对多个访问进行仲裁,给获得仲裁的输入端口送出“授权(grant)”信号以表示接受此请求。获得“授权”的输入端口可以进行访问报文的传输,而没有获得“授权”的输入端口被阻塞,禁止进行访问报文的传输。
3、根据传统路由节点的路由策略可以发现,在路由节点工作时,输入端口由于前一笔访问未获得授权会造成后续访问均被阻塞,从而造成该输入端口的阻塞,从而影响路由节点的工作性能。
4、针对相关技术中,路由节点的工作性能较低的问题,目前尚未提出有效的解决方案。
技术实现思路
1、本技术实施例提供了一种信号发送方法、路由节点、存储介质及电子设备,以至少解决路由节点的工作性能较低的问题。
2、根据本技术的一个实施例,提供了一种信号发送方法,应用于片上网络中的路由节点中的输入端口模块,所述路由节点还包括m个输出端口模块,所述输入端口模块包括:输入端口路由解码单元,输入缓存选择单元,输入缓存单元,路由申请单元;所述输入缓存单元包括p个缓存队列,包括:在获取到访问报文的情况下,通过所述输入端口路由解码单元解析所述访问报文,确定所述访问报文对应的目标输出端口序号;通过所述输入缓存选择单元,根据所述目标输出端口序号从所述p个缓存队列中确定目标缓存队列,并将所述访问报文存储至所述目标缓存队列中;通过所述路由申请单元,根据路由申请表向所述m个输出端口模块中的部分输出端口模块发送对应的申请输出端口信号,其中,所述部分输出端口模块包括所述目标输出端口序号对应的输出端口模块,所述输入缓存单元中存储有待发送至所述部分输出端口模块中的任一输出端口模块的访问报文,所述申请输出端口信号用于向输出端口模块请求报文传输的权限,其中,所述路由申请表中记录有所述p个缓存队列中的每个缓存队列的状态信息。
3、在一个示例性的实施例中,所述根据所述目标输出端口序号从所述p个缓存队列中确定目标缓存队列,包括:根据所述目标输出端口序号从缓存工作表中确定第一目标行数据,并将所述第一目标行数据中的第一中间状态值设置为第一值,将p行数据中除所述第一目标行数据外的所有行数据中的第一中间状态值设置为第二值,其中,所述第一目标行数据中的输出端口序号为所述目标输出端口序号、且所述第一目标行数据中的缓存空状态为非空状态,所述缓存工作表中具有所述p个缓存队列对应的所述p行数据,所述p行数据中第i个缓存队列对应的第i行数据包括:缓存队列序号,输出端口序号,缓存队列工作状态,缓存空状态,缓存满状态、输出序号,第一中间状态值,第二中间状态值和第三中间状态值;所述非空状态用于指示缓存队列中存在报文;从所述缓存工作表中确定第二目标行数据,并将所述第二目标行数据中的第二中间状态值设置为第一值,将p行数据中除所述第二目标行数据外的所有行数据中的第二中间状态值设置为第二值,其中,所述第二目标行数据为所述p行数据中第一中间状态值为第一值的所有行数据中输出序号最大的行数据;从所述缓存工作表中确定第三目标行数据;在所述第三目标行数据的缓存满状态为非满状态的情况下,将所述第三目标行数据的第三中间状态值设置为第一值;在所述第三目标行数据的缓存满状态为满状态的情况下,将所述第三目标行数据的第三中间状态值设置为第二值,其中,所述第三目标行数据为所述p行数据中第二中间状态值为第一值的行数据,所述非满状态用于指示缓存队列还允许存放报文,所述满状态用于指示缓存队列不允许继续存放报文;在所述p行数据中的p个第三中间状态值不全为第二值的情况下,将所述p行数据中第i行数据的缓存队列工作状态设置为所述第i行数据中的第三中间状态值,i为小于等于p的正整数;在所述p行数据中的p个第三中间状态值全为第二值的情况下,从所述缓存工作表中确定第四目标行数据,并将所述第四目标行数据的缓存队列工作状态设置为第一值,其中,所述第四目标行数据为所述p行数据中第一个缓存空状态为空状态的行数据;从所述缓存工作表中确定第五目标行数据,并将所述第五目标行数据对应的缓存队列确定为所述目标缓存队列,其中,所述第五目标行数据为所述p行数据中缓存队列工作状态为第一值的行数据。
4、在一个示例性的实施例中,所述将所述第四目标行数据的缓存队列工作状态设置为第一值之后,所述方法还包括:将所述第四目标行数据中的输出端口序号设置为所述目标输出端口序号;以及在所述p行数据中的p个第二中间状态值全为第二值的情况下,将第四目标行数据中的输出序号设置为0;在所述p行数据中的p个第二中间状态值不全为第二值的情况下,从所述缓存工作表中确定第六目标行数据,并将所述第六目标行数据的输出序号加一,其中,所述第六目标行数据为所述p行数据中第二中间状态值为第一值的行数据。
5、在一个示例性的实施例中,所述将所述访问报文存储至所述目标缓存队列中之后,方法还包括:将所述p行数据中与所述目标缓存队列对应的行数据中的缓存队列工作状态设置为第二值。
6、在一个示例性的实施例中,所述方法还包括:在所述p行数据中存在第七目标行数据中的缓存空状态从非空状态变化为空状态的情况下,从所述缓存工作表中确定第八目标行数据,其中,所述第八目标行数据中的输出端口序号与所述第七目标行数据中的输出端口序号相同;将第八目标行数据中的输出序号减一。
7、在一个示例性的实施例中,所述根据路由申请表向m个输出端口模块中的部分输出端口模块发送对应的申请输出端口信号,包括:在从所述路由申请表中的p组数据中确定出z个输出端口号的情况下,通过以下方式更新路由申请表,j为小于等于z的正整数:在所述p组数据中确定多个第j目标组数据,并将所述多个第j目标组数据中输出序号最小的第j目标组数据中第j个输出端口模块的指定参数设置为第一值,将所述多个第j目标组数据中的其余第j目标组数据中第j个输出端口模块的指定参数设置为第二值;其中,所述第j目标组数据中的输出端口号为所述z个输出端口号中的第j个输出端口号、且所述第j目标组数据中的缓存空状态为非空状态;在所述p组数据中的第j个输出端口模块的指定参数不全为第二值的情况下,向所述第j个输出端口模块发送申请输出端口信号;其中,所述p组数据中第i个缓存队列对应的第i组数据包括:缓存队列序号,输出端口号,缓存空状态,输出序号,m个输出端口模块的指定参数;所述非空状态用于指示缓存队列中存在报文。
8、在一个示例性的实施例中,所述输入端口模块还包括:选择单元,所述向所述第j个输出端口模块发送申请输出端口信号之后,方法还包括:在获取到所述j个输出端口模块发送的输出端口授权信号的情况下,通过所述选择单元,将目标组数据中的缓存队列序号对应的缓存队列中的访问报文发送至所述j个输出端口模块,其中,所述目标组数据为所述p组数据中的第j个输出端口模块的指定参数为第一值的组数据,所述输出端口授权信号用于指示所述输入端口模块具有向所述j个输出端口模块进行报文传输的权限。
9、在一个示例性的实施例中,所述输入端口模块还包括:优先级产生单元,所述通过所述输入缓存选择单元,根据所述目标输出端口序号从所述p个缓存队列中确定目标缓存队列之后,方法还包括:通过所述优先级产生单元,在获取到所述输入缓存选择单元发送的m个输出端口序号以及所述m个输出端口序号中的第k个输出端口序号对应的多个输出序号的情况下,向所述第k个输出端口序号对应的输出端口模块发送第k个输出端口信号请求优先级,其中,所述第k个输出端口信号请求优先级等于所述第k个输出端口序号对应的多个输出序号中输出序号最大的输出序号。
10、根据本技术的一个实施例,还提供了一种信号发送方法,应用于片上网络中路由节点中的输出端口模块,所述路由节点还包括n个输入端口模块,所述输出端口模块包括:输入端口带宽平衡单元,输出端口优先级比较单元,输出端口仲裁单元;包括:在获取到b个输入端口模块发送的申请输出端口信号的情况下,通过所述输入端口带宽平衡单元确定所述b个输入端口模块中的每个输入端口模块是否具有一级优先级,其中,b为小于或等于n的正整数;在所述b个输入端口模块中存在具有一级优先级的输入端口模块的情况下,通过所述输出端口优先级比较单元将所述b个输入端口模块中具有一级优先级的多个输入端口模块中输出端口信号请求优先级最大的输入端口模块确定为待授权输入端口模块;在所述b个输入端口模块中不存在具有一级优先级的输入端口模块的情况下,通过所述输出端口优先级比较单元将所述b个输入端口模块中输出端口信号请求优先级最大的输入端口模块确定为待授权输入端口模块,其中,所述n个输入端口模块中的每个输入端口模块的输出端口信号请求优先级为所述每个输入端口模块预先发送的优先级;在通过输出端口仲裁单元确定同意向所述待授权输入端口模块传输报文的情况下,向所述待授权输入端口模块发送输出端口授权信号,其中,所述输出端口授权信号用于指示所述待授权输入端口模块具有向所述输出端口模块进行报文传输的权限。
11、在一个示例性的实施例中,所述通过输入端口带宽平衡单元确定所述b个输入端口模块中的每个输入端口模块是否具有一级优先级,包括:通过以下方式确定所述b个输入端口模块中的第b个输入端口模块是否具有一级优先级:对获取到的所述第b个输入端口模块发送的访问报文的大小进行累加,得到第一带宽值;在每个时钟周期根据带宽恢复能力对所述第一带宽值进行处理,得到第二带宽值;在所述第二带宽值大于预设带宽阈值的情况下,确定所述第b个输入端口模块不具有一级优先级;在所述第二带宽值小于或等于所述预设带宽阈值的情况下,确定所述第b个输入端口模块具有一级优先级。
12、根据本技术的又一个实施例,还提供了一种路由节点,包括:n个输入端口模块,其中,所述输入端口模块包括:输入端口路由解码单元,输入缓存选择单元,输入缓存单元,路由申请单元;所述输入缓存单元包括p个缓存队列;所述输入端口路由解码单元,用于在获取到访问报文的情况下,解析所述访问报文,确定所述访问报文对应的目标输出端口序号;所述输入缓存选择单元,用于根据所述目标输出端口序号从所述p个缓存队列中确定目标缓存队列,并将所述访问报文存储至所述目标缓存队列中;所述路由申请单元,用于根据路由申请表向所述m个输出端口模块中的部分输出端口模块发送对应的申请输出端口信号,其中,所述部分输出端口模块包括所述目标输出端口序号对应的输出端口模块,所述输入缓存单元中存储有待发送至所述部分输出端口模块中的任一输出端口模块的访问报文,所述申请输出端口信号用于向输出端口模块请求报文传输的权限,其中,所述路由申请表中记录有所述p个缓存队列中的每个缓存队列的状态信息;m个输出端口模块,其中,所述输出端口模块包括:输入端口带宽平衡单元,输出端口优先级比较单元,输出端口仲裁单元;所述输入端口带宽平衡单元用于在获取到b个输入端口模块发送的申请输出端口信号的情况下,通过所述输入端口带宽平衡单元确定所述b个输入端口模块中的每个输入端口模块是否具有一级优先级,其中,b为小于或等于n的正整数;所述输出端口优先级比较单元,用于在所述b个输入端口模块中存在具有一级优先级的输入端口模块的情况下,将所述b个输入端口模块中具有一级优先级的多个输入端口模块中输出端口信号请求优先级最大的输入端口模块确定为待授权输入端口模块;在所述b个输入端口模块中不存在具有一级优先级的输入端口模块的情况下,将所述b个输入端口模块中输出端口信号请求优先级最大的输入端口模块确定为待授权输入端口模块,其中,所述n个输入端口模块中的每个输入端口模块的输出端口信号请求优先级为所述每个输入端口模块预先发送的优先级;所述输出端口仲裁单元,用于在确定同意向所述待授权输入端口模块传输报文的情况下,向所述待授权输入端口模块发送输出端口授权信号,其中,所述输出端口授权信号用于指示所述待授权输入端口模块具有向所述输出端口模块进行报文传输的权限。
13、根据本技术的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
14、根据本技术的又一个实施例,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
15、根据本技术的又一个实施例,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一项方法实施例中的步骤。
16、通过本技术,路由节点的输入端口模块在获取到访问报文的情况下,通过输入端口路由解码单元确定访问报文对应的目标输出端口序号,并通过输入缓存选择单元,根据目标输出端口序号从p个缓存队列中确定目标缓存队列,并将访问报文存储至所述目标缓存队列中;进而通过路由申请单元,根据路由申请表向m个输出端口模块中的部分输出端口模块发送对应的申请输出端口信号,其中,申请输出端口信号用于向输出端口模块请求报文传输的权限,其中,路由申请表中记录有所述p个缓存队列中的每个缓存队列的状态信息。相比传统的路由节点而言,本技术的路由节点的输入端口模块通过增加输入缓存选择单元及对应的输入缓存单元,实现防止同一个输入端口第一个访问报文未获得授权而阻塞第二个甚至第三个访问报文的下发,进而提高了路由节点的工作效率,解决了路由节点的工作性能较低的问题。
本文地址:https://www.jishuxx.com/zhuanli/20240905/285901.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表