[发明专利]一种支持动态缓冲区分配的消息存储电路及方法有效
申请号: | 202011404131.8 | 申请日: | 2020-12-05 |
公开(公告)号: | CN112579488B | 公开(公告)日: | 2023-02-24 |
发明(设计)人: | 魏艳艳;田泽;牛少平;魏美荣;郝冲;王宣明 | 申请(专利权)人: | 西安翔腾微电子科技有限公司 |
主分类号: | G06F13/16 | 分类号: | G06F13/16 |
代理公司: | 西安匠成知识产权代理事务所(普通合伙) 61255 | 代理人: | 商宇科 |
地址: | 710054 陕西省西*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 支持 动态 缓冲区 分配 消息 存储 电路 方法 | ||
1.一种支持动态缓冲区分配的消息存储电路,其特征在于:所述存储电路包括内部模块和外部接口,所述内部模块包括消息配置表模块、寄存器控制模块、收发消息控制模块和消息存储模块,所述外部接口包括Flash接口、主机接口、离散量接口和总线接口,其中:
所述消息配置表模块分别与寄存器控制模块和Flash接口连接,包括多条消息的配置信息及消息发送偏移和接收偏移,其中每条消息的配置信息包括消息属性、消息长度、消息ID,其通过Flash接口从外部Flash中读取;
所述寄存器控制模块分别与消息配置表模块、收发消息控制模块、主机接口和离散量接口连接,根据消息配置表模块的消息配置信息统计出发送消息条数、接收消息条数,并根据消息的发送偏移、接收偏移为收发消息控制模块实现收发消息调度控制逻辑;根据离散量接口缓冲区类型输入实现缓冲区类型寄存器;还实现消息存储地址分配与存储区切换,主机接口访问寄存器的逻辑;
所述收发消息控制模块分别与寄存器控制模块、消息存储模块和总线接口连接,根据寄存器控制模块的收发消息调度控制按照消息长度、存储地址从消息存储模块的发送缓冲区中取出消息并组包通过总线接口发送到总线上,或者从总线接口接收消息进行消息ID比对后按对应的存储地址将接收消息存储到消息存储模块的接收缓冲区中;
所述消息存储模块分别与收发消息控制模块和主机接口连接,负责收发消息控制模块的收发消息存储,按照发送消息条数、接收消息条数动态划分,依次为接收缓冲区0、接收缓冲区1、发送缓冲区0以及发送缓冲区1,每条消息大小根据缓冲区类型确定,最多收发128条消息。
2.根据权利要求1所述的支持动态缓冲区分配的消息存储电路,其特征在于:所述消息配置表模块中每条消息的配置信息,其消息属性包含没有消息、发送消息和接收消息3种属性,消息长度最大2KB,消息ID最大127。
3.根据权利要求1所述的支持动态缓冲区分配的消息存储电路,其特征在于:所述寄存器控制模块的缓冲区类型通过硬件离散量开关实现,系统上电锁存后使用,缓冲区类型有2种,其中类型0表示每条消息大小2KB;类型1表示每条消息大小512B。
4.根据权利要求1所述的支持动态缓冲区分配的消息存储电路,其特征在于:所述消息存储模块中每条消息采用双缓冲区存储,乒乓缓存方式,其中消息存储位置和消息的配置信息按顺序一一对应。
5.根据权利要求1所述的支持动态缓冲区分配的消息存储电路,其特征在于:所述消息存储模块的内容由主机通过主机接口进行读写访问。
6.根据权利要求1所述的支持动态缓冲区分配的消息存储电路,其特征在于:所述消息存储模块的消息存储区动态划分每个缓冲区的基地址,如下:
接收缓冲区0的基地址为0x0;
接收缓冲区1的基地址为接收消息条数*每条消息大小;
发送缓冲区0的基地址为接收消息条数*每条消息大小*2;
发送缓冲区1的基地址为发送消息条数*每条消息大小。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安翔腾微电子科技有限公司,未经西安翔腾微电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011404131.8/1.html,转载请声明来源钻瓜专利网。