第4期 袁丹:分布式实时仿真中网络系统扩展的研究与实现 说,单机仿真平台已经很难满足系统高负荷计算量的要求,大多数的实时飞行仿真应用都需要 采用分步式仿真技术,以充分利用各功能模块可以并行处理的好处。 . 分步式仿真采用一致的结构、标准和算法,通过网络将分散在不同地理位置的不同类型的 仿真应用和真实世界互联,支持异地分布的真实的、虚拟的和异构的平台级仿真应用之间的数 据交换和互操作,建立一种人可以参与交互的综合仿真环境。然而,异地分布的特点也给分布 式系统自身带来了挑战性的难题,怎样来互相联接这些分布的各仿真子系统,使得子系统之间 的通讯不影响或者尽可能少地影响系统整体的性能,成为系统制约实时性能的一个瓶颈。业界 已经尝试了多种互联的方式,这些方式各有其优缺点,但是直到出现复制共享内存网络技术之 后,才使一般基于PC平台的分布式实时仿真应用从根本上成为可能。 分布式实时仿真系统的子系统间要通过实时通信设备联接在一起,子系统间的数据传输要 满足以下要求:(1)传输时间延迟要求,即低数据等待时间,使应用到应用(Application—to—Ap— plication)的时间最短;(2)数据传输高可预见性要求,一个应用程序所需的数据必须在指定的或 可预见的时间内准时获得,并且在系统运行的整个期间都必须做到这一点;(3)I/O处理透明性 要求,实时系统是CPU敏感的,要求CPU尽量用于执行应用模块而不要过度分担I/O处理的任 务,这意味着与I/O相关的处理需要放在主机CPU以外进行。 基于SBS实时网络产品的实时网络系统,该系统各计算机、设备上位机及模拟器通过SBS 的节点卡和光缆与SBS的HUB相连,以实现各节点之间实时通信,来完成分布式半实物实时仿 真。随着仿真应用技术的发展,需要参与半实物仿真的实物越来越多,因此有必要对该系统进 行进一步的扩展。其最简单的方法是增加一些SBS节点,但目前SBS实时网产品已停产。现在 VMIC实时网产品是实时网的主流产品,其性能指标比较高,选用VMIC实时网产品来扩展将有 利于今后的发展。但是,两个实时网在一起时,又存在如何实现互连互通、保证资源不冲突,并 解决该分布式半实物仿真系统的实时性问题。 2 VMIC实时网产品特点 VMIC实时网产品具有以下特点: 高速易用的光纤网络(2.12 G串行波特率); 被写人一个节点的内存的数据也被写人网络上所有节点的内存; 最多256个节点; 多模光纤的连接距离可达300m,单模光纤的连接距离可达10 km; 动态包的大小,从4到64字节数据; 传输率达47.1M字节/s(4个字节的包)到174M字节/s(64字节的包); :lE 64 M字节或128 M字节SDRAM映像内存; :lE两个DMA通道; 通过简单的命令,网上任何节点可以对其它或所有网上节点产生中断; 45 维普资讯 http://www.cqvip.com
拱都科技 j-错误检测; 冗余传输模式,用于抑制额外错误; j-处理器无系统开销; 网络操作不涉及处理器; ,|PCI64位66MHz传输; 符合PCI版本2.2; 操作系统:Windows 2000、VxWorks、Linux。 3 桥接方案 为了实现SBS实时网与VMIC实时网的互连互通,采用桥接方案,即采用桥接器分别连接 SBS实时网与VMIC实时网,如附图所示。 附图桥接方案 在桥接方案中,桥接器具有十分重要的作用,它用于实现SBS实时网与VMIC实时网的互 连互通。要使仿真试验实时网络系统数据传输正确,满足半实物仿真的要求,该桥接器必须精 心设计,要避免资源冲突,进行数据格式转换,提高数据传输速度,保证数据的实时传输。 桥接器采用一台高档微型计算机,安装Windows 2000操作系统和Visual C++,在该计算机 的两个PCI插槽上分别插上SBS实时网卡和VMIC实时网卡。为了实现SBS实时网和VMIC实 时网的互连互通,并且实时地在两个实时网之间传输数据,在该计算机上开发一套SBS和VMIC 实时网实时通信软件。该软件包括初始化、SBS和VMIC实时网实时通信、SBS和VMIC实时网 数据转换、中断处理等模块,初始化模块用于设立用于SBS和VMIC实时网通信的一系列实时 网地址,设置中断;SBS和VMIC实时网实时通信模块用于两个实时网之间的数据通信;SBS和 VMIC实时网数据转换模块用于转换两个实时网之间的数据格式;中断处理模块用于收到实时 网的中断信号后进行中断处理,包括调用SBS和VMIC实时网实时通信模块和数据转换模块进 行实时网实时数据通信和数据格式转换。 4可行性分析 对该系统的可行性分析可分为下面三个部分:资源冲突分析、性能分析、实时性分析。 46 维普资讯 http://www.cqvip.com 第4期 袁丹:分布式实时仿真中网络系统扩展的研究与实现 4.1资源冲突分析 作为桥接器的计算机上要插人SBS和VMIC两块实时网卡,资源是否冲突是必须考虑的问 题。由于SBS和VMIC两块实时网卡都是PCI卡,PCI卡插人计算机后,Windows 2000操作系统 对PCI资源进行了统一分配,已经采取措施避免了资源冲突的问题。另外,我进行了一个试验, 将SBS和VMIC两块实时网卡插人同一台计算机,并且分别运行SBS和VMIC的测试程序,结果 是两个测试程序运行正确,这表明SBS和VMIC两块实时网卡之间不会产生资源冲突。 4.2性能分析 在桥接器上既要实现SBS实时网的数据传输,又要实现VMIC实时网的数据传输,还要实 现两个实时网的数据转换,必须考虑性能问题。 4.2.1 VMIC性能测试 测试方法:为每一个节点在VMIC实时网卡上分配2块内存区,一块是读区域,另一块是写 区域。节点间通信是通过共享内存的方法来实现的,当节点向VMIC网卡内存写数据时,该数据 能快速映射到实时网上其它节点的VMIC网卡内存的同一区域,其它节点就可以从本地VMIC 网卡内存上读取这些数据,测试读写延迟时采用Peek和DMA两种方式,总共测试10000次,求 平均时间(单位为微秒),测试数据如表1所示。 表1 VMIC性能测试结果 字节数 读写延迟时间 Peek方式 DMA方式 t 1.46 11.14 10 13.95 14.27 10o 136.71 37.92 20o 272.12 65.42 4o0 545.89 121.23 60o 818.05 176.50 80o 1087.05 232.51 10o0 l36o.72 288.74 l50o 2041.5l 435.45 2000 2721.65 571.88 加0o 5445.41 l152.35 4.2.2 SBS性能测试 测试方法:与VMIC测试类似,为每一个节点在SBS实时网卡上分配2块内存区,一块是读 区域,另一块是写区域,节点间通信是通过共享内存的方法来实现的,当节点向SBS网卡内存写 数据时,该数据能快速映射到实时网上其它节点的SBS网卡内存的同一区域,其它节点就可以 从本地SBS网卡内存上读取这些数据,测试读写延迟时采用Map和DMA两种方式,总共测试 47 维普资讯 http://www.cqvip.com 洪都科技 10000次,求平均时间(单位为微秒),测试数据如表2所示。 表2 SBS性能测试结果 字节数 M印方式 l 1.23 读写延迟时间 DMA方式 l3.3l 10 loo l3.10 131.32 16.09 36.63 20o 400 6oo 8oo l0oo l5oo 2Ooo 绷 261.96 524.58 786.20 l049.07 1310.32 l965.93 2621.26 5241.92 61.o5 lo9.53 157.83 207.18 256.96 382.90 508.48 loo5.74 4.2.3桥接器性能分析 分析VMIC和SBS实时网性能测试,除了字节数很小的情况,DMA方式的读写延迟时间比 较小,故在桥接器中采用DMA方式传输VMIC和SBS实时网的数据。由于VMIC和SBS实时网 的数据转换和其它程序运行的时问相对两个实时网上数据传输的时间要小得多,故不考虑该数 据延迟,桥接器的读写延迟时间大约等于VMIC和SBS实时网的数据读写延迟时间之和,桥接 器的读写延迟时间如表3所示。 表3桥接器性能测试结果 字节数 l 读写延迟时间 l3.3l+l1.14=24.45 10 loo 2oo 400 16.09+14.27=3O.36 36.63+37.92=74.55 61.05+65.42=126.47 lo9.53+121.23=230.76 600 8oo l0oo l5oo 157.83+176.50=334.33 207.18+232.51=439,69 256.96+288.74=545.70 382.90+435.45=818.35 2Ooo 柏00 508.48+571.88=10舳.36 1005.74 +1152.35=2158.09 维普资讯 http://www.cqvip.com 第4期 袁丹:分布式实时仿真中网络系统扩展的研究与实现 从表3可以看出,传输400个字节数据(即100个浮点数),桥接器需230.76微秒的读写延 迟时间,在一般的分布式半实物仿真中不会导致超帧现象;传输600个字节数据(即150个浮点 数),桥接器需334.33微秒的读写延迟时间,相对来说比较大,对于有些分布式半实物仿真不会 导致超帧现象,但另一些可能会出现超帧现象。因而,通过桥接器每帧传输100个以下浮点数, 或100个多一点的浮点数,桥接器性能能满足帧时间为1毫秒的分布式半实物仿真的要求。 4.3实时性分析 SBS实时网和VMIC实时网都有中断方式,故桥接器可采用中断方式,数据写人SBS实时网 后,触发桥接器的中断,在桥接器的中断处理程序中采用DMA方式进行数据传输,从表3可知, 通过桥接器传输100个浮点数需230.76微秒的读写延迟时间,考虑中断进人及其它一些格外开 销,传输100个浮点数需要的时间小于300微秒,小于帧时间1毫秒的三分之一,对于整个分布 式半实物仿真系统来说是可以容忍的。采用数据写人SBS实时网后触发桥接器的中断的方式, 可以保证每一帧都触发桥接器中断,保证两个实时网的帧同步,保证帧时间的确定性。因而,在 保证两个实时网传输的浮点数在一定的数量以下,整个系统的实时性能满足帧时间为1毫秒的 分布式半实物仿真的实时性要求。 5 结束语 映像内存通过分布式计算机系统提供了对共享数据快速有效的访问,扩展后的分布式半实 物仿真系统最多可以允许256个系统(节点)之间的数据共享,速率最高可达174M字节/s, 写人的数据存储在本地SDRAM中,通过一个高速光纤数据通道广播到其它映像内存节点,数据 传输是软件透明地,所以不需I/O开销,在峰值速率下通过传送和接收FIFO缓冲数据来优化处 理器和总线性能,以此来维持较高的数据吞吐量。通过写人一个字节寄存器来中断一个或多个 节点,这些中断信号可被用于同步系统进程,或用于跟随任何数据,中断会跟随在数据之后以确 保在中断响应之前数据被接收。系统中的每个节点都有唯一的识别数,从0到255,该节点号有 助于确定节点的功能。 参考文献 1李洪敏.实时仿真系统研究(J).兵工自动化,2002,21(3):56-57 2康凤举.现代仿真技术与应用(M).北京:国防工业出版社,2001:279~283 (收稿日期:2007一o7一o3) 作者简介袁丹,男,1978年出生,工程师,现从事仿真工作。 49
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务