[发明专利]一种用于ARINC661规范的指令过滤方法和装置有效
申请号: | 201410547233.3 | 申请日: | 2014-10-15 |
公开(公告)号: | CN104331278B | 公开(公告)日: | 2017-08-25 |
发明(设计)人: | 王达;孙永荣;赵文献;王小梅;郑澄;丁勇;李荣冰 | 申请(专利权)人: | 南京航空航天大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F17/30 |
代理公司: | 南京经纬专利商标代理有限公司32200 | 代理人: | 朱小兵 |
地址: | 210016 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 arinc661 规范 指令 过滤 方法 装置 | ||
技术领域
本发明涉及一种用于ARINC661规范的指令过滤方法和装置,特别涉及基于ARINC661规范的座舱显示系统中数据处理技术,属于航空领域的数据总线处理技术。
背景技术
随着综合航电系统的迅速发展,作为航电系统中重要组成部分的座舱显示系统也向着开放式构架发展,为适应这种发展趋势,ARINC661规范应运而生,并得到了迅速的发展。该规范将UA(User Applications,用户应用)的逻辑功能与CDS(Cockpit Display System,座舱显示系统)的画面生成功能相隔离,并为两者提供了标准化的接口。
CDS的画面显示内容是由DF(Definition File,定义文件)确定的,DF文件由UA定义,包含若干图层,而每个图层中又包含若干窗体部件,窗体部件是基本的显示图元。在运行阶段,CDS与UA之间的交互是通过一系列ARINC661协议规范的指令实现的。规范中共有五大类指令,其中,UA发往CDS的参数设置指令类,是最复杂的一类,本文的说明都是以它为例的。UA发往CDS的数据包是一种称之为“指令块”的数据,它打包了在同一个图层中的一些窗体部件的参数设置指令,而UA和CDS分别相当于指令块的源地址和目标地址。在UA和CDS进行指令交互时,一方面,需要对通信过程进行实时监控,这时往往需要针对来自某个UA(或者发往某个CDS)的指令进行监测,这就需要对总线中的指令进行过滤;另一方面,在事后的数据分析中,需要从指令数据库中针对性地搜索指令记录,为此需要对指令集进行过滤。因此,设计一种指令过滤的方法显得尤为重要,它能够筛选出符合条件的指令,例如在监控一号显示器时,只采集发往一号显示器的指令。
目前还没有针对基于ARINC661规范的指令过滤方法的专门研究,本发明从工程应用角度出发,设计了一种用于ARINC661规范的指令过滤方法和装置,既便于用户灵活地设计过滤表达式,又具有很高的执行效率。
发明内容
本发明所要解决的技术问题是提供一种用于ARINC661规范的指令过滤方法和装置,用于对基于ARINC661的座舱显示系统通信指令进行过滤和搜索。
本发明为解决上述技术问题采用以下技术方案:
一方面,本发明提供一种用于ARINC661规范的指令过滤方法,包括如下步骤:
步骤1,设计过滤表达式:提取ARINC661指令块的若干特征属性,将其作为过滤规则的关键字,并设计规范化的过滤表达式来描述过滤规则;
步骤2,解释过滤表达式:将步骤1中设计的过滤表达式解释成一种树形数据结构,过滤表达式中所有过滤规则均存储在树形数据结构的树结点中;
步骤3,执行过滤:根据ARINC661规范对待过滤指令块进行协议解析,读取待过滤指令块的特征属性值,并与步骤2中得到的树形数据结构中对应的过滤规则进行匹配,计算过滤表达式的值,即为过滤的结果。
作为本发明的进一步优化方案,步骤1中所述特征属性包括消息号、用户应用ID号、图层ID号、窗体部件ID号、指令类型号,并分别用字母M、U、L、W、P作为它们的变量。
作为本发明的进一步优化方案,步骤1中所述过滤表达式由至少一个基本过滤表达式构成,且符合如下自定义规范:
(1)定义关键字集合A={M、U、L、W、P},定义关键字的层次关系:M>U>L>W>P,表示关键字层次的高低;
(2)定义运算符集合B={“()”、“=”、“&”、“|”},定义运算符的优先级关系:“()”>“=”>“&”>“|”,表示运算符在表达式中相继出现时计算的优先级;
(3)定义“Var=Value”为基本过滤表达式,表示一条过滤规则,其中,Var为关键字集合A中任一元素;Value为Var的过滤值;运算符“=”用于比较已经赋值的Var和Value是否相等,其运算结果为表达式的布尔值;
(4)若过滤表达式由至少两个基本过滤表达式组合而成时,基本过滤表达式通过运算符“()、&、|”进行组合,其中:
a.运算符“&”用于计算两个表达式的布尔值的逻辑与;
b.运算符“|”用于计算两个表达式的布尔值的逻辑或;
c.运算符“()”用于改变运算优先级,“()”内的表达式具有最高优先级;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京航空航天大学,未经南京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410547233.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:磨粒、悬浮液、研磨液及这些的制造方法
- 下一篇:PAU型沸石的制造方法