本申请涉及数据传输,特别是涉及一种数据传输方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术:
1、随着芯片功能的增加,芯片设计中功能模块划分也变得越来越精细。片上网络的引入使得总线传输请求频次也越来越多,总线抢占情况也越发的明显,尤其对于多核soc(system on a chip,片上系统),由于存在数据的强sync(同步)情况,不同核心之间的数据输出顺序存在先后,为了提高核心工作效率,一个核心输出数据的同时,另一个核心应该有足够深度的存储空间把处理的数据存储下来,从而避免数据反压影响核心的流水线正常工作。随着现代处理器核心数目的增加,数据存储与数据传输成为影响芯片性能,功耗,散热的关键因素,如何减少这些跨模块的是数据存储和传输压力,是当代芯片设计者必须考虑的问题。
2、传统芯片设计中,对于模块之间的数据传输都是采用的发送一笔数据接收一笔数据的方法。不会考虑数据之间的相关性,即认为每笔数据之间是相互独立的,计算结果(calculation result)直接从sender(发送)模块发送到receiver(接收)模块,这样的处理方法固然简单,但是当数据之间具有强关联性的时候,则会暴露出其低效的缺点。假设发送的计算结果(calculation result)为0x1234,0x2345,0x3456,0x2345,0x1234,0x3456,0x2345,0x3456,0x1234……,实际receiver收到的有效数据只有0x1234,0x2345,0x3456三笔,其余都是重复数值,大量的重复数据不但会占用interface(接口)和总线资源,还会导致芯片功耗增加。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够减少芯片功耗的数据传输方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
2、第一方面,本申请提供一种数据传输方法,所述方法包括:
3、接收发送方发送的数据传输请求,并确定所述数据传输请求对应的原始数据的原始数据信息,所述原始数据信息包括匹配结果以及标签信息;
4、存储接收到的所述原始数据信息;
5、在所述数据传输请求需要执行时,获取所述匹配结果;
6、在所述匹配结果为匹配成功的情况下,获取所述匹配结果对应的标签信息,并基于所述标签信息获取参考处理次数,所述参考处理次数与接收方存储原始数据的缓存行对应;
7、在所述参考处理次数不为预设值的情况下,增加所述缓存行对应的所述参考处理次数。
8、在其中一个实施例中,所述方法还包括:
9、在所述匹配结果为匹配失败的情况下,获取与所述标签信息对应的原始数据,并在所述接收方中存储所述原始数据的缓存行的参考处理次数至少一个不为预设值的情况下,将所述原始数据以及所述原始数据信息发送至所述接收方,所述原始数据信息用于指示所述接收方将所述原始数据存储至对应的缓存行,并增加所述缓存行对应的参考处理次数。
10、在其中一个实施例中,所述方法还包括:
11、在所述参考处理次数为预设值的情况下,将所述原始数据以及所述原始数据信息发送至所述接收方,所述原始数据信息用于指示所述接收方将所述原始数据存储至对应的缓存行,并增加所述缓存行对应的参考处理次数。
12、在其中一个实施例中,所述方法还包括:
13、接收所述接收方的反馈信息,所述反馈信息是在所述接收方每次对所述缓存行中所述原始数据处理后返回的;
14、基于所述反馈信息减少所述缓存行的参考处理次数。
15、在其中一个实施例中,所述增加所述缓存行对应的所述参考处理次数,包括:
16、当所述数据传输请求表示一次发送多条原始数据时,且多条所述原始数据的标签信息相同时,确定所述原始数据的条数;
17、基于所述条数增加所述参考处理次数。
18、在其中一个实施例中,所述存储接收到的所述原始数据信息,包括:
19、将所述原始数据信息存储到与所述发送方对应的数据队列中;
20、所述在所述数据传输请求需要执行时,获取匹配结果,包括:
21、在所述数据传输请求需要执行时,确定发送方对应的数据队列,从所确定的数据队列中获取所述匹配结果。
22、在其中一个实施例中,所述确定所述数据传输请求对应的原始数据信息,包括:
23、获取所述数据传输请求对应的原始数据的标签信息;
24、将所述原始数据的标签信息与已存储的标签信息进行匹配,得到匹配结果;
25、基于所述标签信息以及所述匹配结果,生成所述原始数据信息。
26、在其中一个实施例中,所述方法还包括:
27、在所述发送方待发送的原始数据的重复情况满足重复条件时,生成所述原始数据信息;
28、在所述发送方待发送的原始数据的重复情况不满足重复条件时,获取所述原始数据,并将所述原始数据发送至所述接收方。
29、第二方面,本申请提供一种数据传输装置,所述装置包括:
30、接收模块,用于接收发送方发送的数据传输请求,并确定所述数据传输请求对应的原始数据信息,所述原始数据信息包括匹配结果以及标签信息;
31、存储模块,用于存储接收到的所述原始数据信息;
32、匹配结果获取模块,用于在所述数据传输请求需要执行时,获取匹配结果;
33、参考处理次数获取模块,用于在所述匹配结果为匹配成功的情况下时,获取所述匹配结果对应的标签信息,并基于所述标签信息获取参考处理次数,所述参考处理次数与接收方存储原始数据的缓存行对应,所述原始数据与所述原始数据信息对应;
34、数据传输模块,用于在所述参考处理次数不为预设值的情况下,增加所述缓存行对应的所述参考处理次数。
35、第三方面,本申请提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的任意一个实施例中的方法的步骤。
36、第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的任意一个实施例中的方法的步骤。
37、第五方面,本申请提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的任意一个实施例中的方法的步骤。
38、上述数据传输方法、装置、计算机设备、存储介质和计算机程序产品,每次发送方需要传输数据时,计算待传输的原始数据的原始数据信息,并存储该原始数据信息,这样数据传输请求需要执行时,获取原始数据信息的匹配结果,在匹配结果为匹配成功时,则仅需要增加对应的参考处理次数,即原始数据的参考处理次数,而不需要再将原始数据发送至接收方,减少了原始数据的传输频次,降低了功耗,且先将发送发的原始数据进行了暂存,也避免了接收方缓存无空闲时,导致接收方不能够正常对数据处理的情况。
1.一种数据传输方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法还包括:
5.根据权利要求1至3任意一项所述的方法,其特征在于,所述增加所述缓存行对应的所述参考处理次数,包括:
6.根据权利要求1至3任意一项所述的方法,其特征在于,所述存储接收到的所述原始数据信息,包括:
7.根据权利要求1至3任意一项所述的方法,其特征在于,所述确定所述数据传输请求对应的原始数据信息,包括:
8.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法还包括:
9.一种数据传输装置,其特征在于,所述装置包括:
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述的方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。
12.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。