摘 要:国家某重点试验室的半实物仿真系统承担着算法研究、实际产品联试的任务,具有重要的工程效用。该仿真系统包含近20多个分系统或设备,涉及的设备开发单位有10多个。为了将如此复杂的系统有效地组织在一起,并保证其可靠运行,需要为其设计一个优良的数据信息交换系统。
关键词:光纤反射;内存网;半实物仿真
基于系统的复杂性,以及仿真数据实时交换的特殊要求,仿真系统采用光纤反射内存网作为其数据信息交换的核心。光纤反射内存网传输速率高、实时性强、具有协议简单、对软件透明的优势,另外其传输距离比较长,不怕电磁干扰的特点尤其适用于复杂系统,且有利于试验室布局。
1、光纤反射内存网结构设计
光纤反射内存网由网卡、路由器和光纤三部分组成,其中网卡选择的型号是VMIC公司的VMIPCI-5565,路由器选择的型号是VMIACC-5595。光纤反射内存网的最高传输速度为170Mbyte/s,最大可支持256个节点。
光纤反射内存网有环形和星形两种构型;实际应用中结合了这两种构型,见图1,其网络结构分为两层,顶层为环形,底层则为星形,系统主控调度计算机和4个路由器形成顶层环形网,各设备计算机连接在路由器上,构成底层节点。这种混合结构的优点在于:一、由主控计算机发出的系统时钟信息到达各个节点的时间比较短且较为一致,有利于系统设备间的同步运行;二、仿真系统有多种仿真组态方式,每种仿真组态方式需要的设备并不相同,而混合结构光纤反射内存网允许跳过不用的节点,这样某些试验组态下中用不到的设备节点就不需要开机运行。
图 1
系统采用价格较为便宜的多模光纤,节点间最大传输距离为300米,已满足试验室的布线要求。但使用多模光纤时,顶层环形网实际是准环形的,顶层布线必须占用每个路由器的两个端口。
2、半实物仿真系统设计
主控计算机通过光纤反射内存网设置仿真系统的仿真模式和设备配置,负责系统时钟的发布,启动、暂停或终止系统的运行,并监视在光纤反射内存网上的数据交换,从而掌握系统中每台设备的运行状态。该仿真系统运行时数据吞吐量很大,除了需要考虑基本的硬件因素外,还有考虑通讯协议和信息格式方案,以及软件读取数据的方式,这些都会极大地影响整个光纤反射内存网的运行效率。
一般有三种可行的VMIPCI-5565网卡的数据存取方式:中断方式、定时查询方式和直读方式。中断方式是网卡收到一个完整有效的信息帧后,产生中断,由操作系统和控制程序响应处理。定时查询方式是通过信息有效标志确认信息的是否可以读取,而程序则定时查询该标志,以确认是否应该读取信息。直读方式则最简单,基本是个异步过程,发送方只管写,读取方只管读,但可能发生边读边写的情况。
通过编程和通讯试验发现:在中断方式下,每次读取信息所需要的时间从2毫秒到近30毫秒不等;在定时查询方式下,如果查询间隔时间设为1毫秒,则每次读取信息所需的时间为1毫秒到3毫秒;直接读取方式则只需要几十微秒。本系统中的大多数设备采用的是windows系统,所中断方式响应时间长和不稳定是必然的,这将导致仿真节拍难以控制和预计,所以中断方式不适合在本系统中使用。定时查询方式中通讯的双方通过专门设定的标志来确定通讯信息的完整性和有效性,它适合节点数较少的情况,当系统节点数较多,节点间交叉通讯较频繁时,等待多个标志有效的过程将占用较多的运行时间,此外在该方式下,如果光纤反射内存网发生传输错误丢失数据帧,则可能导致读取数据的设备运行间断。
3、数据通信协议
综合考虑后,仿真系统采用了直读方式,并配合经过特殊设计的信息帧格式(以表1为例,数据帧长64字节),解决了直读方式存在的边读边写的缺陷。
表1
字节内容第一字段0~3本信息发出时的系统时钟第二字段4~27本信息的标记特征第三字段28~59有效数据第四字段60~63系统时钟,重复字节0~3的内容 节点在发送数据时,先在缓冲区内把信息帧的4~59字节的内容填好,然后读取系统时钟,并把有效的系统时钟填写在信息帧的第一字段,而第四字段则重复第一字段的内容,最后这个节点把缓冲区中数据一次性输出到光纤反射内存网上。节点读取数据时,一次把64字节的内容全部读入,然后检查信息帧第一和第四字段是否一致,若一致则信息有效,若不一致则信息无效,需要再次读取和判断。按这样处理,不仅读取信息占用机时少,同时也保证了信息的有效和完整。
信息帧的第二字段包括仿真试验编号、信息类型,发出信息节点编号,运行周期参考值,信息帧格式编号,信息帧流水号等内容,通过这些标记特征可以识别光纤反射内存网上的传输每一帧数据。另外这个字段在仿真中还起着极为重要的作用,用到数据的节点根据本节点的运行情况,利用字段中的运行周期参考值和信息帧流水号等内容,或直接取用数据,或利用先前读取的数据向外插值,或暂停运行等待数据更新,通过这样处理,可使系统中运行周期并不一致的各个设备在异步条件下得以顺利的运行。
4、总结
需要指出的是,即使采用同样的模型,异步系统的仿真结果也会和同步系统的仿真结果不一样,一般来讲同步系统的结果更可信些,然而本仿真系统出于某些原因并没能设计成同步系统。本文中的光纤反射内存网应用方案,针对了异步系统的特殊性,实际运行效果还是比较让人满意的。
参考文献:
[1] 刘志国,刘太阳,王仕成,邓方林. 基于实时网络的半实物仿真集成平台研究[J]. 系统仿真学报, 2007,(15) .
[2] 张树坤,杨一栋,郑成军. 基于超高速光纤实时网络的光传操纵系统研究[J]. 光通信技术, 2006,(01) .
[3] 顾颖彦. 反射内存网实时通信技术的研究[J]. 计算机工程, 2002,(07) .