[发明专利]一种FPGA实现ORB的方法有效
申请号: | 202110605066.3 | 申请日: | 2021-05-31 |
公开(公告)号: | CN113364757B | 公开(公告)日: | 2023-02-10 |
发明(设计)人: | 邵力强;徐远泽;袁瑞 | 申请(专利权)人: | 成都谐盈科技有限公司 |
主分类号: | H04L69/22 | 分类号: | H04L69/22;G06F15/78 |
代理公司: | 北京正华智诚专利代理事务所(普通合伙) 11870 | 代理人: | 代维凡 |
地址: | 610000 四川省成都市*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 fpga 实现 orb 方法 | ||
1.一种FPGA实现ORB的方法,其特征在于,包括以下步骤:
S1、接收外部报文存储在内部缓存FIFO结构的单元中,并将外部报文作为初始报文发送至ORB适配器;
S2、通过ORB适配器对初始报文进行解析得到第二报文,并将第二报文发送至消息处理器;
S3、通过消息处理器对第二报文进行解析得到第三报文,并将第三报文发送至波形应用模块;
S4、将来自波形应用模块的报文作为第四报文,通过消息处理器对第四报文进行转换与封装得到第五报文,将第五报文发送至ORB适配器;
S5、通过ORB适配器对第五报文进行转换与封装得到第六报文,将第六报文向外发送,完成FPGA实现ORB;
步骤S3的具体方法包括以下子步骤:
S3-1、通过消息处理器根据报文标识位判断第二报文是否为请求报文,若是则进入步骤S3-2,否则进入步骤S3-4;
S3-2、从第二报文中解析出应用模块地址,判断解析出的应用模块地址与消息处理器所对应的波形应用模块地址是否一致,若是则进入步骤S3-3;否则舍弃第二报文;
S3-3、解析并对第二报文中的操作函数编码进行转换,得到第二操作函数编码;将报文标识位的数据、第二操作函数编码以及第二报文的报文信息进行拼接得到第三报文,将第三报文发送至波形应用模块并进入步骤S4;
S3-4、将第二报文后续的应答报文内容进行标准化处理,将报文标识位的数据和标准化处理得到的数据进行拼接得到第三报文,将第三报文发送至波形应用模块并进入步骤S4;
步骤S3-3中解析并对第二报文中的操作函数编码进行转换的具体方法包括以下子步骤:
S3-3-1、通过消息处理器解析第二报文中的操作函数编码,查找消息处理器中存储的公用操作函数列表,判断第二报文的操作函数名与公用操作函数列表中的公用操作函数编码是否一致,若是则将公用操作函数列表中的公用操作函数的二次编码代替第二报文的公用操作函数编码,得到第二操作函数编码;否则进入步骤S3-3-2;
S3-3-2、通过消息处理器查找私用操作函数列表,判断第二报文中的操作函数编码与私用操作函数列表中的私用操作函数名是否一致,若是则将私用操作函数列表中的私用操作函数的二次编码代替第二报文的操作函数编码,并在代替后的私用操作函数的二次编码前添加与公用操作函数编码对应长度的数值0,得到第二操作函数编码;否则舍弃当前报文。
2.根据权利要求1所述的FPGA实现ORB的方法,其特征在于,步骤S2的具体方法包括以下子步骤:
S2-1、通过ORB适配器获取初始报文的GIOP信息,并根据GIOP信息判断初始报文是否为请求报文,若是则进入步骤S2-2,否则进入步骤S2-4;
S2-2、获取初始报文的请求标识号、应答标识、对象目标值、操作函数名,将初始报文的对象目标值进行标准化处理,形成固定长度的应用模块地址;对初始报文的操作函数名进行转换,得到第一操作函数编码;
S2-3、将应用模块地址、第一操作函数编码以及初始报文的报文信息进行拼接,并在拼接结果的最前端加上报文标识位,将请求标识号、应答标识和加上报文标识位的数据作为第二报文,将第二报文发送至消息处理器并进入步骤S3;
S2-4、获取初始报文的应答标识号和应答状态,将初始报文后续应答报文内容拼接在报文标识位,将应答标识号、应答状态和拼接了初始报文后续的应答报文内容的数据作为第二报文,将第二报文发送至消息处理器并进入步骤S3;其中初始报文后续的应答报文内容包括函数调用完成后返回的函数参数。
3.根据权利要求2所述的FPGA实现ORB的方法,其特征在于,步骤S2-2中对初始报文的操作函数名进行转换的具体方法包括以下子步骤:
S2-2-1、通过ORB适配器查找公用操作函数列表,判断初始报文的操作函数名与公用操作函数列表中的公用操作函数名是否一致,若是则将公用操作函数列表中的公用操作函数编码代替初始报文的操作函数名,得到第一操作函数编码;否则进入步骤S2-2-2;
S2-2-2、通过ORB适配器查找私用操作函数列表,判断初始报文的操作函数名与私用操作函数列表中的私用操作函数名是否一致,若是则将私用操作函数列表中的私用操作函数编码代替初始报文的操作函数名,并在代替后的私用操作函数编码前添加与公用操作函数编码对应长度的数值0,得到第一操作函数编码;否则舍弃当前报文。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都谐盈科技有限公司,未经成都谐盈科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110605066.3/1.html,转载请声明来源钻瓜专利网。