数据传输方法、装置、硬件处理装置及存储介质与流程
- 国知局
- 2024-11-19 09:44:30
本发明涉及通信,具体涉及数据传输方法、装置、硬件处理装置及存储介质。
背景技术:
1、生产者-消费者模型(producer-consumer model)是计算机科学中用于描述并发系统中任务同步和资源共享问题的一种抽象模型。在这个模型中,生产者负责将数据写入缓冲区,而消费者则从缓冲区中读取数据。生产者通常采用相同设备id进行数据流的下发,以保证数据流的正确性和顺序性。根据总线协议的规范,相同设备在片上互连网络是严格按照顺序执行,当前的写命令必须等收到前一个从设备的响应后才能下发,导致数据流串行下发,极大影响生产者-消费者模型执行效率。由于数据流可以乱序执行,难以保证生产者-消费者模型的正确性,影响数据传输效率。
技术实现思路
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、第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的数据传输方法。
39、本实施例提供的数据传输方法,基于监听单元对单生产者发出的写请求命令和对应的写响应命令进行监听,并将写请求命令累加值下发至片上互连网络,将写响应命令累加值发送给主接口处理单元,存储通知数据并将通知数据发送给主接口处理单元,通过主接口处理单元对通知数据进行读取以及命令映射,得到映射结果,将映射结果同步至片上互连网络可使消费者获取对应的通知数据并根据通知数据获取目标数据,该方法相当于对单生产者向多消费者发送的通知类消息进行存储、监听和命令映射后再转发给相应的消费者,从而提升消费者获取目标数据的准确性,提升数据传输的效率。
本文地址:https://www.jishuxx.com/zhuanli/20241118/330012.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表