[发明专利]一种基于多核处理器的消息交互方法在审

专利信息
申请号: 201810694310.6 申请日: 2018-06-29
公开(公告)号: CN108958953A 公开(公告)日: 2018-12-07
发明(设计)人: 王浩;周强;刘伟;周谷庆;侯先栋 申请(专利权)人: 南京南瑞继保电气有限公司;南京南瑞继保工程技术有限公司
主分类号: G06F9/54 分类号: G06F9/54
代理公司: 南京纵横知识产权代理有限公司 32224 代理人: 董建林
地址: 211102 江*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 消息帧 多核处理器 消息存储 消息交互 消息模块 接收方 点对点通信 发送方消息 存储消息 接收应用 轮询方式 消息内容 消息收发 消息数据 消息通信 循环读取 应用程序 发送方 灵活的 索引区 读写 帧头 写入 发送 传递
【权利要求书】:

1.一种基于多核处理器的消息交互方法,其特征是,发送方和接收方分别具有各自独立的消息模块,发送方消息模块用于接收应用层的消息数据并组织成消息帧发送出去;接收方消息模块用于将消息帧处理后传递给应用程序;具体包括以下步骤:

S1:在发送方和接收方分别设定独立的存储区;

S2:将步骤S1设定的存储区分为索引区和消息存储区,所述索引区存储当前读序号与写序号,标识当前读写位置;所述消息存储区用于存放消息帧,所述消息帧包括帧头和消息内容;

S3:在发送方和接收方分别设定用于读取索引区序号来判断存储区剩余空间或需要读取的消息帧数目的消息模块;

S4:接收方的消息模块通过当前读写序号判断是否有数据需要读取以及当前读取位置,发送方的消息模块通过读写序号判断是否有空间写入以及当前写入位置;

S5:发送方处理器的消息模块根据应用程序传递的消息内容判断需要写入的消息存储区,同时将消息数据组成特定的消息帧格式,直接写入对应的消息存储区并更新索引区内的写序号。

2.根据权利要求1所述的消息交互方法,其特征是,所述特定的消息帧格式包括帧头以及消息内容,帧头占8字节,包含消息帧类型标识、目的地址、发送序号、保留字节以及消息长度;所述消息长度占4字节,为字节4到7;所述消息内容所占字节数为消息长度定义为n,位置为8到n+7。

3.根据权利要求2所述的消息交互方法,其特征是,所述消息内容包括心跳报文和管理报文。

4.根据权利要求1所述的消息交互方法,其特征是,接收方消息模块定时轮询本核心需要读取的消息存储区,根据读写序号判断是否有消息帧需要处理,并校验消息帧的完整及正确性,更新读序号后通知应用程序消息到达。

5.根据权利要求4所述的消息交互方法,其特征是,所述轮询的周期为毫秒级。

6.根据权利要求1所述的消息交互方法,其特征是,各核心的消息模块负责对消息存储区进行监视,依据帧头内容对前后帧是否连续、帧内容是否完整进行校验,并将校验结果反馈给应用程序。

7.根据权利要求1所述的消息交互方法,其特征是,预先设定的消息单元长度等于最大消息帧长度,且各消息单元长度一致。

8.根据权利要求7所述的消息交互方法,其特征是,采用环形有限单元存储结构用来存储消息单元。

9.根据权利要求1~8任意所述的消息交互方法,其特征是,多核处理器由ARM以及多个DSP核构成,在ARM与任一DSP核之间传递消息。

10.根据权利要求9所述的消息交互方法,其特征是,设置于ARM与任一DSP之中的存储区各自分为两组单向存储区,分别用于ARM与DSP之间、以及DSP与ARM之间的单向收发。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京南瑞继保电气有限公司;南京南瑞继保工程技术有限公司,未经南京南瑞继保电气有限公司;南京南瑞继保工程技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201810694310.6/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top