虚拟1553B总线设备的实现方法技术

技术编号:24330846 阅读:36 留言:0更新日期:2020-05-29 19:33
本发明专利技术提供了一种虚拟1553B总线设备的实现方法,包括:按照真实1553B板卡,设置供应用程序调用的API接口;通过虚拟1553B总线对本机的通用寄存器进行虚拟化,以及对虚拟1553B总线数据传输时的控制逻辑和响应状态进行仿真;编写网络调用程序,向虚拟1553B设备提供网络接入服务;通过网络调用程序,设置模拟的总线控制器和远程终端,并通过总线控制器和远程终端执行对总线指令字、数据字、状态字的计算;设置故障数据的格式和注入机制,并对虚拟1553B总线设备的通讯过程进行虚拟。本发明专利技术提供1553B常用数据传输机制的模拟,实现1553B总线的软件虚拟和故障注入能力,能够降低搭建测试环境的成本。

Implementation of virtual 1553B bus device

【技术实现步骤摘要】
虚拟1553B总线设备的实现方法
本专利技术涉及软件测试
,具体地,涉及虚拟1553B总线设备的实现方法。
技术介绍
1553B总线标准目前已经在航天、航空等多个领域取得广泛应用,真实的1553B板卡价格昂贵,基于真实1553B板卡开展的软件开发和测试需要独占相关设备,成本较高。目前大多数真实1553B板卡在使用时,对板卡内部的运行状态和数据缺乏实时有效的管理手段,无法实现特殊硬件故障和异常通信数据的模拟,为执行异常测试用例带来了不便。
技术实现思路
针对现有技术中的缺陷,本专利技术的目的是提供一种虚拟1553B总线设备的实现方法。根据本专利技术提供的一种虚拟1553B总线设备的实现方法,包括:步骤1:按照真实1553B板卡,设置供应用程序调用的API接口;步骤2:根据所述API接口,通过虚拟1553B总线对本机的通用寄存器进行虚拟化,以及对虚拟1553B总线数据传输时的控制逻辑和响应状态进行仿真;步骤3:编写网络调用程序,向虚拟1553B设备提供网络接入服务;步骤4:通过所述网络调用程序,设置模拟的总线控制器和远程终端,并通过所述总线控制器和所述远程终端执行对总线指令字、数据字、状态字的计算;步骤5:设置故障数据的格式和注入机制,并对虚拟1553B总线设备的通讯过程进行虚拟。可选地,所述步骤2中进行虚拟化的通用寄存器包括:中断屏蔽寄存器、第一配置寄存器、第二配置寄存器、起始/复位寄存器、指令堆栈指针寄存器、BC控制字/RT子地址控制字寄存器、定时标识寄存器、中断状态寄存器、第三配置寄存器、第四配置寄存器、第五配置寄存器、RT/监视器数据堆栈地址寄存器、BC帧定时保持寄存器、下一次BC消息定时器保持寄存器、BC帧定时/RT最后命令/MT触发字寄存器、RT状态字寄存器、RT比特字寄存器。可选地,所述步骤3包括:在底层利用socket发送和接收虚拟1553B设备需要的交互数据,向虚拟1553B设备提供网络接入。可选地,所述步骤4包括:步骤4.1:总线控制器发出接收指令字及规定数目的数据字到远程终端,远程终端在收到消息并核实后,回发状态字给所述总线控制器;步骤4.2:总线控制器向远程终端发出指令字,远程终端在收到所述指令字并核实后,回发状态字给所述总线控制器,并发送规定数目的数据字给总线控制器;步骤4.3:总线控制器向接收数据的远程终端发出一个接收指令字,向发送数据的远程终端发出一个发送指令字,发送数据的远程终端收到指令字后,发出状态字及规定数目的数据字;在数据传输结束后,发送数据的远程终端和接收数据的远程终端分别向总线发出响应状态字;步骤4.4:将接收数据的远程终端地址设置为31,以实现总线控制器向远程终端广播的功能和远程终端向远程终端广播的功能。可选地,所述步骤5包括:通过修改指令堆栈指针寄存器、中断状态寄存器的状态值,或者改变虚拟1553B设备中的数据流,以模拟故障发生时真实硬件设备的行为。可选地,还包括:步骤6:在不同设备上部署虚拟1553B总线设备,配置总线上每个节点的RT地址、RT子地址、内存基地址、寄存器基地址和中断信息。与现有技术相比,本专利技术具有如下的有益效果:本专利技术提供的虚拟1553B总线设备的实现方法,通过模拟1553B板卡的真实编程接口,利用本地内存模拟1553B的寄存器和存储器,提供1553B常用数据传输机制的模拟和故障注入的能力,能够降低搭建测试环境的成本,具有广泛的平台适应性和兼容性。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显:图1为本专利技术提供的虚拟1553B总线设备的结构示意图;图2为总线控制器向远程终端的传输的流程示意图;图3为远程终端向总线控制器的传输的流程示意图;图4为远程终端向远程终端的传输的流程示意图。具体实施方式下面结合具体实施例对本专利技术进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本专利技术,但不以任何形式限制本专利技术。应当指出的是,对本领域的普通技术人员来说,在不脱离本专利技术构思的前提下,还可以做出若干变化和改进。这些都属于本专利技术的保护范围。根据本专利技术提供的一种虚拟1553B总线设备的实现方法,包括:步骤1:按照真实1553B板卡,设置供应用程序调用的API接口(ApplicationProgramInterface,应用程序接口)。步骤2:根据API接口,通过虚拟1553B总线对本机的通用寄存器进行虚拟化,以及对虚拟1553B总线数据传输时的控制逻辑和响应状态进行仿真。步骤3:编写网络调用程序,向虚拟1553B设备提供网络接入服务。步骤4:通过网络调用程序,设置模拟的总线控制器和远程终端,并通过总线控制器和远程终端执行对总线指令字、数据字、状态字的计算。步骤5:设置故障数据的格式和注入机制,并对虚拟1553B总线设备的通讯过程进行虚拟。本实施例中的方法可以在不接入真实1553B板卡的情况下,完成对1553B总线的功能仿真和故障数据模拟。在步骤1中,虚拟1553B板卡的API接口与真实1553B板卡的API接口完全一致,应用程序通过替换动态链接库的方式,不需要修改原代码,就可以实现通信介质由真实1553B设备到虚拟1553设备的转换。具体的虚拟API接口如表1所示。表1虚拟接口列表示例性的,步骤2中进行虚拟化的通用寄存器包括:中断屏蔽寄存器、第一配置寄存器、第二配置寄存器、起始/复位寄存器、指令堆栈指针寄存器、BC控制字/RT子地址控制字寄存器、定时标识寄存器、中断状态寄存器、第三配置寄存器、第四配置寄存器、第五配置寄存器、RT/监视器数据堆栈地址寄存器、BC帧定时保持寄存器、下一次BC消息定时器保持寄存器、BC帧定时/RT最后命令/MT触发字寄存器、RT状态字寄存器、RT比特字寄存器。本实施例中,为实现步骤1的虚拟API接口,虚拟1553B总线使用本机内存对数据堆栈地址寄存器、中断屏蔽寄存器等17个通用寄存器的进行仿真,对堆栈空间、消息块空间等存储器进行虚拟化,对1553B总线数据传输时的控制逻辑和响应状态进行仿真。1553B总线通信行为的仿真实现了1553B总线的常用通信行为仿真,包括:BC->RT通信数据模拟、RT->RT通信数据模拟、RT->BC通信数据模拟、广播数据模拟。进一步地,1553B总线通信行为的仿真在物理层使用以太网进行数据交换和同步控制。本实施例中,1553B板卡数据模拟不仅包括对1553B板卡的寄存器、存储器、中断等数据模拟,也包括对控制变量、逻辑数据的模拟。示例性的,步骤3包括:在底层利用socket(类似API接口的网络端口)发送和接收虚拟1553B设备需要的交互数据,向虚拟1553B设备提供网络接入。本实施例中,在步骤3的数据模拟基础本文档来自技高网...

【技术保护点】
1.一种虚拟1553B总线设备的实现方法,其特征在于,包括:/n步骤1:按照真实1553B板卡,设置供应用程序调用的API接口;/n步骤2:根据所述API接口,通过虚拟1553B总线对本机的通用寄存器进行虚拟化,以及对虚拟1553B总线数据传输时的控制逻辑和响应状态进行仿真;/n步骤3:编写网络调用程序,向虚拟1553B设备提供网络接入服务;/n步骤4:通过所述网络调用程序,设置模拟的总线控制器和远程终端,并通过所述总线控制器和所述远程终端执行对总线指令字、数据字、状态字的计算;/n步骤5:设置故障数据的格式和注入机制,并对虚拟1553B总线设备的通讯过程进行虚拟。/n

【技术特征摘要】
1.一种虚拟1553B总线设备的实现方法,其特征在于,包括:
步骤1:按照真实1553B板卡,设置供应用程序调用的API接口;
步骤2:根据所述API接口,通过虚拟1553B总线对本机的通用寄存器进行虚拟化,以及对虚拟1553B总线数据传输时的控制逻辑和响应状态进行仿真;
步骤3:编写网络调用程序,向虚拟1553B设备提供网络接入服务;
步骤4:通过所述网络调用程序,设置模拟的总线控制器和远程终端,并通过所述总线控制器和所述远程终端执行对总线指令字、数据字、状态字的计算;
步骤5:设置故障数据的格式和注入机制,并对虚拟1553B总线设备的通讯过程进行虚拟。


2.根据权利要求1所述的虚拟1553B总线设备的实现方法,其特征在于,所述步骤2中进行虚拟化的通用寄存器包括:中断屏蔽寄存器、第一配置寄存器、第二配置寄存器、起始/复位寄存器、指令堆栈指针寄存器、BC控制字/RT子地址控制字寄存器、定时标识寄存器、中断状态寄存器、第三配置寄存器、第四配置寄存器、第五配置寄存器、RT/监视器数据堆栈地址寄存器、BC帧定时保持寄存器、下一次BC消息定时器保持寄存器、BC帧定时/RT最后命令/MT触发字寄存器、RT状态字寄存器、RT比特字寄存器。


3.根据权利要求1所述的虚拟1553B总线设备的实现方法,其特征在于,所述步骤3包括:在底层利用socket发送和接收虚拟1553B设备需要的交互数据,向虚拟155...

【专利技术属性】
技术研发人员:魏冬冬尹龙雯于清华苏金梅金臻陈恩耀
申请(专利权)人:上海航天计算机技术研究所
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1