[发明专利]一种Binary协议数据流的硬件解析方法有效
申请号: | 202010961829.3 | 申请日: | 2020-09-14 |
公开(公告)号: | CN112131161B | 公开(公告)日: | 2022-03-29 |
发明(设计)人: | 滕达;温士魁 | 申请(专利权)人: | 山东产研集成电路产业研究院有限公司 |
主分类号: | G06F13/40 | 分类号: | G06F13/40;H04L69/06;H04L69/22 |
代理公司: | 南京行高知识产权代理有限公司 32404 | 代理人: | 赵洪玉 |
地址: | 250101 山东省济南市历城区山东自*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 binary 协议 数据流 硬件 解析 方法 | ||
1.一种Binary协议数据流的硬件解析方法,其特征在于,所述硬件为FPGA或AISC,并被配置为具有输入接口缓存、包重整模块、解码模块和输出接口缓存;
所述输入接口缓存用于存储接收的原始的Binary协议数据流;
所述包重整模块用于将输入接口缓存发送的数据流中的数据包进行与解码模块相对应的位宽修改;
所述解码模块用于将数据流中的每个数据包按照Binary协议进行字段匹配,匹配出的字段即为解码输出;
所述输出接口缓存用于缓存解码模块所解码输出的数据;
所述硬件执行以下步骤:所述输入接口缓存接收原始的Binary协议数据流,所述包重整模块将输入接口缓存发送的数据流中的数据包进行与解码模块相对应的位宽修改,并按FIFO策略将数据流发送至解码模块,所述解码模块对数据流中的每个数据包进行解码后发送至输出接口缓存,所述输出接口缓存解码后的数据并按FIFO策略输出从而得到解码后的码流;
其中,所述解码模块为一个顺序执行的状态机,其在解码数据流时,执行如下步骤:
S100、IDLE状态,等待数据流;
S200、Message-Header状态,将数据流中的数据包剥离包头,并将包头保存,供后续模块使用;
S300、Message-Length状态,将数据包剥离包数据长度,并将长度保存;
S400、Message-Analyze状态,根据步骤S200得到的包头数据,将数据包按其协议字段进行匹配从而分为三大类,并分别送入相应的子状态进行解码,即当协议字段为30xx92时,执行步骤S401,当协议字段为30xx91时,执行步骤S402,当协议字段为30xx11时,执行步骤S403;
S401、Message-30xx92子状态,处理数据流中后缀为92的相关数据包,按照相应92字段的协议进行解码;
S402、Message-30xx91子状态,处理数据流中后缀为91的相关数据包,按照相应91字段的协议进行解码;
S403、Message-30xx11子状态,处理数据流中后缀为11的相关数据包,按照相应11字段的协议进行解码;
S500、Message-CRC状态,计算CRC校验,丢弃错误数据包。
2.根据权利要求1所述的Binary协议数据流的硬件解析方法,其特征在于:所述输入接口缓存通过网络接口或者PCI-E接口接收原始的Binary协议数据流,所述输出接口缓存通过网络接口或者PCI-E接口发送解码后的码流。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东产研集成电路产业研究院有限公司,未经山东产研集成电路产业研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010961829.3/1.html,转载请声明来源钻瓜专利网。