本发明涉及信息处理,尤其涉及一种双核通信装置、方法及电子设备。
背景技术:
1、在嵌入式系统中,嵌入式处理器是整个系统的核心,嵌入式处理器大多为多核处理器,多个内核间的数据传输效率,直接影响整个系统的性能。
2、目前多核嵌入式处理器大多采用共享内存的方式实现多核间的数据通信,即在物理空间中开辟出一块内存空间,这块内存空间可以被多个内核访问,一个内核将数据写入到该空间,另一个内核将数据读出,通过这种方式,即可完成内核间的数据通信,但是相关技术中,多核处理器对共享存储空间的利用率不高,传输效率低。
技术实现思路
1、本发明提供一种双核通信装置、方法及电子设备,用以解决现有技术中多核处理器对共享存储空间的利用率不高,传输效率低的缺陷。
2、本发明提供一种双核通信装置,应用于双核处理器,所述双核处理器包括:第一处理器和第二处理器;所述装置包括:第一读写控制模块、第二读写控制模块、传输控制模块和共享存储模块;所述第一读写控制模块分别与所述第一处理器和所述共享存储模块通信连接,所述第二读写控制模块分别与所述第二处理器和所述共享存储模块连接,所述传输控制模块分别与所述第一读写控制模块和第二读写控制模块通信连接;
3、传输控制模块用于根据所述共享存储模块的剩余空间容量和写入数据流的数据流信息,确定流控参数信息和编帧参数信息;
4、所述第一读写控制模块用于根据所述传输控制模块发送的流控参数信息和编帧策略信息,将所述第一处理器的数据流读取或写入所述共享存储模块;
5、所述第二读写控制控制模块用于根据所述传输控制模块发送的流控参数信息和编帧策略信息将所述第二处理器的数据流的读取或写入所述共享存储模块。
6、根据本发明提供的一种双核通信装置,所述第一读写控制模块包括:第一流控模块、第一帧编码器和第一写控制器,所述第一帧编码器分别与所述第一流控模块和所述第一写控制器通信连接;
7、其中,所述第一流控模块用于在根据所述传输控制模块发送的流控参数控制所述数据流的传输带宽;
8、其中,所述第一帧编码器用于根据编帧参数信息和所述编帧策略对所述第一流控模块写入的数据流进行帧编码处理,得到数据帧;
9、其中,所述编帧参数信息包括:所述剩余空间容量和数据帧最大帧长度;
10、其中,所述第一写控制器用于为每个所述数据帧添加帧组信息,并将n个数据帧集成为一个帧组,将所述帧组写入所述共享存储模块;
11、其中,所述帧组信息包括以下至少一项:帧组编号、帧编号、当前帧存储首地址、下一帧存储首地址、当前帧是否为帧组的最后一帧。
12、根据本发明提供的一种双核通信装置,所述第一读写控制模块还包括:第一帧解码器和第一读控制器,所述第一帧解码器分别与所述第一读控制器和所述第一流控模块通信连接;
13、其中,所述第一读控制器用于从所述共享存储模块中读取所述帧组,并在所述共享存储模块中删除读取的所述帧组;
14、其中,所述第一帧解码器用于根据所述帧组信息对所述第一读控制器读取的所述帧组进行帧解码处理,得到所述数据流,并将所述数据流通过所述流控模块传输到第一处理器。
15、根据本发明提供的一种双核通信装置,所述第二读写控制模块包括:第二流控模块、第二帧编码器和第二写控制器,所述第二帧编码器分别与所述第二流控模块和所述第二写控制器通信连接;
16、其中,所述第二流控模块用于在根据所述传输控制模块发送的流控参数控制所述数据流的传输带宽;
17、其中,所述第二帧编码器根据编帧参数信息和所述编帧策略对所述第二流控模块写入的数据流进行帧编码处理,得到数据帧;
18、其中,所述编帧参数信息包括:所述剩余空间容量和数据帧最大帧长度;
19、其中,所述第二写控制器为每个所述数据帧添加帧组信息,并将n个数据帧集成为一个帧组,将所述帧组写入所述共享存储模块;
20、其中,所述帧组信息包括以下至少一项:帧组编号、帧编号、当前帧存储首地址、下一帧存储首地址、当前帧是否为帧组的最后一帧。
21、根据本发明提供的一种双核通信装置,所述第二读写控制模块还包括:第二帧解码器和第二读控制器,所述第二帧解码器分别与所述第二读控制器和所述第二流控模块通信连接;
22、其中,所述第二读控制器用于从所述共享存储模块中读取帧组,并在所述共享存储模块中删除读取的所述帧组;
23、其中,所述第二帧解码器用于根据所述帧组信息对所述第二读控制器读取的所述帧组进行帧解码处理,得到所述数据流,并将所述数据流通过所述流控模块传输到第二处理器。
24、根据本发明提供的一种双核通信装置,所述传输控制模块,具体用于:
25、将同一组所述流控参数信息和编帧策略信息分别传输给所述第一读写控制模块和所述第二读写控制模块。
26、本发明还提供一种基于上述双核通信装置的双核通信方法,包括:
27、所述第一读写控制模块根据传输控制模块发送的流控参数信息和编帧策略信息,将所述第一处理器的数据流写入所述共享存储模块;
28、所述第二读写控制模块根据所述编帧策略信息从所述共享存储模块读取所述数据流后,将所述数据流传输给第二处理器。
29、根据本发明提供的双核通信方法,所述第一读写控制模块根据传输控制模块发送的流控参数信息和编帧策略信息,将所述第一处理器的数据流写入所述共享存储模块,包括:
30、所述第一读写控制模块用于根据所述流控参数信息控制所述数据流写入,并根据所述编帧策略信息将写入的数据流进行帧编码处理得到数据帧;
31、将n个所述数据帧集成为一个帧组,将所述帧组写入所述共享存储模块。
32、根据本发明提供的双核通信方法,所述第二读写控制模块根据所述编帧策略信息从所述共享存储模块读取所述数据流后,将所述数据流传输给第二处理器,包括:
33、所述第二读写控制模块从所述共享存储模块读取所述帧组数据之后,根据所述编帧策略信息对所述帧组数据进行帧解码处理,得到所述数据流;
34、将所述数据流传输给所述第二处理器。
35、本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述双核通信方法。
36、本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述双核通信方法。
37、本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述双核通信方法。
38、本发明提供的一种双核通信装置、方法及电子设备,由于第一读写控制模块和第二读写控制模块均是根据同一传输控制模块来进行流量控制,因此,在进行数据写入和数据读取时,能够有效避免双核同时进行数据写入时的数据溢出情况,提高存储空间的利用率,增大传输带宽。同时由于第一读写控制模块和第二读写控制模块均是根据同一传输控制模块来进行帧编码处理的,因此另一模块在进行解码时,能够有效感觉帧编码时的信息进行解码,无需后续维护数据传输提高内核性能。