[发明专利]一种基于FPGA的周期消息接收缓存方法有效
申请号: | 202011605359.3 | 申请日: | 2020-12-30 |
公开(公告)号: | CN112631809B | 公开(公告)日: | 2022-10-14 |
发明(设计)人: | 王红春;王国栋;程德玉;王波;营志远;张家超 | 申请(专利权)人: | 西安云维智联科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 西安恒泰知识产权代理事务所 61216 | 代理人: | 王芳 |
地址: | 710065 陕西省西安市高新区锦业路6*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 fpga 周期 消息 接收 缓存 方法 | ||
1.一种基于FPGA的周期消息接收缓存方法,其特征在于,具体包括如下步骤:
步骤1:建立缓存;具体操作如下:
建立PD帧写入缓存、其他软件需要的帧缓存、PD帧读取缓存和N个PD帧缓存;建立本地COMID配置表,该表中存储本地需要的N个COMID的地址,每个COMID的地址对应一个PD帧缓存;其中,所述PD帧为过程数据帧;
步骤2:消息帧类别判断及过滤;具体操作如下:
步骤21,将接收到的帧进行过滤,具体是过滤掉上层软件不需要的帧、CRC错误帧;
步骤22,将过滤后的帧分为两类:PD帧与其他软件需要的帧;
步骤3:PD帧写入操作;具体操作如下:
步骤31,根据PD帧的COMID对应本地COMID配置表中的位置,根据该位置得到对应的PD帧缓存的地址;
步骤32,如果步骤31得到的地址对应的PD帧缓存当前没有进行读操作,将此PD帧直接写入PD帧缓存,否则,将该PD帧写入预先设置的PD帧写入缓存,等待读操作完成后再将PD帧从PD帧写入缓存读出并写入对应的PD帧缓存;
步骤4:将其他软件需要的帧放置在其他软件需要的帧缓存中;
步骤5:帧读取操作;具体操作如下:
步骤51,接收主机软件下发的读数据命令,并将该读数据命令同时传送给PD帧读取缓存和其他软件需要的帧缓存;
步骤52,PD帧读取缓存根据读数据命令,解析得到读使能与COMID,根据该COMID判断其是否在本地COMID配置表中,如果有则记录该COMID在本地COMID配置表中的位置,并执行步骤6;否则直接执行步骤53;
步骤53,判断其他软件需要的帧缓存中是否有数据帧,有则读取其他软件需要的帧缓存,读取结束后返回步骤51;否则返回步骤51;
步骤6:PD帧读取缓存操作;具体操作如下:
步骤61,根据步骤52得到的COMID在本地COMID配置表中的位置,判断是否检测到COMID位置对应的PD帧缓存正在进行写操作,如果是,则等待写操作完成后执行步骤62;否则直接执行步骤62;
步骤62,将PD帧缓存的数据读出来写入PD帧读取缓存;
步骤63,读取PD帧读取缓存,读取结束后执行步骤53。
2.如权利要求1所述的基于FPGA的周期消息接收缓存方法,其特征在于,所述步骤1中,每个所述的PD帧缓存大小为2KB。
3.如权利要求1所述的基于FPGA的周期消息接收缓存方法,其特征在于,所述步骤1中,其他软件需要的帧包括ARP帧、ICMP帧和IGMP帧。
4.如权利要求1所述的基于FPGA的周期消息接收缓存方法,其特征在于,所述步骤21具体包括如下子步骤:
步骤211,如果接收到的帧的帧类型不是0x0800且不是0x0806,则直接丢弃该帧;否则执行步骤212;
步骤212,如果接收到的帧的帧类型是0x0800,且此帧为广播帧,则直接丢弃此帧;否则执行步骤213;
步骤213,如果接收到的帧的目的IP地址不是本地IP地址,则直接丢弃此帧;否则执行步骤214;
步骤214,如果接收到的帧CRC校验错误,则直接丢弃此帧;否则执行步骤22。
5.如权利要求1所述的基于FPGA的周期消息接收缓存方法,其特征在于,所述步骤22具体包括如下子步骤:
步骤221,如果接收到帧的IP帧的帧类型为17,17代表UDP帧,且UDP的目的端口号为17224或者17225,则该帧为PD帧,执行步骤222;否则该帧为其他软件需要的帧,执行步骤4;
步骤222,将PD帧解析到其COMID,判断PD帧的COMID是否在步骤1建立的本地COMID配置表中,是则记录其所在位置并执行步骤3,否则丢弃该PD帧。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安云维智联科技有限公司,未经西安云维智联科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011605359.3/1.html,转载请声明来源钻瓜专利网。