射频仿真系统中RTnet实时网络研究

发布时间:2013.08.27 新闻来源:反射内存-实时仿真技术网 浏览次数:

射频仿真系统中RTnet实时网络研究

 

摘要:对在射频仿真系统中基于RTX和反射内存网的RTnet实时网络进行了研究,并分析了其实时性和可靠性。首先对Windows操作系统的实时性缺陷进行分析,详细介绍了基于Windows平台的RTX实时扩展,然后通过对比两种传统的实时网络的优缺点。引入了反射内存网络,最后给出了RTnet实时网络的设计方案。

 

0引言

射频仿真系统(RFSS)是在实验室内模拟射频目标信号并对导弹制导系统的性能进行评估的系统,属于半实物仿真系统(HWIL)‘。在该系统中,导弹末制导雷达参与仿真试验,雷达所需的各种射频信号,如射频目标回波及各种干扰信号均由硬件产生。这些射频信号在全数字仿真中很难用数学模型确切描述,而射频仿真则弥补了全数字仿真的不足,它能更加逼真地模拟实战环境中的电磁环境,更为准确地考核制导系统在实战中的性能情况。射频仿真控制系统是由多台工控机组成的,控制的实时性与通信的可靠性是其两大基本要求,因此对实时性和可靠性具有很高的要求。本文中射频仿真系统的指标要求是网络通信延时不高于60s,丢包率不高于0.0005%。

L Windows系统实时缺陷

Windows系统是一个通用的操作系统平台,它将系统分为两个特权级别,即用户态和核心态J。用户应用程序只能运行在用户态的级别,具有有限的访问接口,并且不能直接访问硬件,而必须通过系统服务调用来获得核心态级别的访问。WindowsVISTA系统结构如图1所示。

Windows系统通过图1的结构体系很好地屏蔽了对底层的操作,对于系统的安全有着重要的作用,但这些机制同样也限制了用户应用程序的权限。

图1WindowsVISTA系统结构图

为了满足应用的可靠性,Windows系统分两个阶段处理中断。首先,系统通过非常短的ISR(中断服务程序)进行一些基本的响应,以后的工作则由一个DPC(延迟过程)调用。虽然ISR按照优先级,以抢占方式运行,但DPC却是按照排队方式运行,这样使得Windows系统对异步事件的响应不能满足时间期限。同时,Windows系统是按照一定的时间片大小将CPU处理器的控制权分配给各个线程,而每个线程的优先级决定了时间片的优先分配顺序,但其线程调度存在优先级倒置,即优先级较低的线程能阻止优先级较高的线程的运行,这样显然违背了实时系统的抢占调度原则。此外,Windows操作系统的线程优先级太少,定时器的定时周期太慢,Windows系统提供的任务问的通信与同步机制不具备实时特征。这些缺陷使得Windows系统不能成为一个实时操作系统。尽管更快的处理器明显地增加了系统的处理能力和平均响应时问。但是Windows系统时间的非确定性是不能完全改变成确定性的,平均响应时间的提高并不能保证最坏情况下系统响应时间的提高。所以,新的硬件平台并不能改变Windows系统的实时性能。

2 RTX实时扩展

Windows系统不是实时操作系统,然而对Windows系统进行一定的扩展之后是可以作为实时系统运行平台的。RTX(实时扩展)是VenturCom公司为了解决Windows平台下的实时问题而开发的一款实时扩展产品。其在Windows系统中增加了一个子系统RTSS(实时子系统),且对WindowsHAL(硬件抽象层)进行了扩展,即实时HAL。RTX扩展HAL有以下三个日的:

1)Windows和RTX线程之间增加独立的中断隔离中断隔离意味着Windows线程和Windows管理设备不能够中断RTX线程,同时Windows线程也不能屏蔽RTSS管理设备,这种机制保证了RTX线程始终占据优先权,不会被Windows线程阻塞。

2)实现高速时钟和定时器

Windows系统提供的定时器的定时周期为1000微秒,实时HAL将其降到了100微秒并且提供了与定时器同步的时钟,其最小分辨率为100纳秒。

3)关闭处理程序

当Windows系统正常关机或者蓝屏崩溃时,RTSS关机管理器就被关联到Windows关机管理器。正常关机允许RTSS不受影响的继续运行,直到所有的RTSS关机处理器返回,但当出现蓝屏崩溃时,RTSS关机处理器就会受到限制,它将无法调用Windows服务,此时关机处理器就会复位硬件,并且切换到备用状态。

RTX在自身环境下对所有线程执行抢占的实时调度策略,具有128个优先级,序号从0到127,0代表最低优先权,127代表最高优先级,它可以提升优先级以防止优先级倒置。当一个RTSS线程运行时,所有Windows管理的中断以及任何拥有低优先级的线程所管理的中断都一律被屏蔽掉。相反,所有拥有高优先级的线程所管理的中断都不会被屏蔽,并且允许其打断当前线程。RTX通过共享内存与Win32进行数据交换,通过临界区等机制进行同步控制。RTX提供与Win32环境兼容的实时编程接口,支持Win32的API,实现了一套实时函数的扩展,提供给开发者更好的应用空间。RTSS实现了实时对象和调度器,通过一套被称作RtWin API的实时API(RtWinAPI同时也被WindowsCE和PharLapETS支持)提供了对这些对象的访问方法。RtWinAPI可以被标准Win32环境和RTSS环境调用。虽然在Win32环境中使用RtWinAPI不能提供在RTSS下的实时性,但是Win32较DDK而言则具有良好的编程环境,而且将Win32程序转化为RTX程序只需要重新链接一套不同的库而已。

3传统的实时网络

实时网络具有独特的数据通信要求,而这些要求往往不是大多数商业数据处理网络所能够满足的。实时网络应满足以下要求:

1)较小的传输延迟

一个网络节点计算机上产生的数据将作为另外的一个网络节点计算机的输人数据。在实时网络中,各个节点计算机之间的数据传输必须在微秒的数量级内完成。

2)确定的性能

实时网络中,网络节点计算机在系统运行期间的任何时候都要做到,其所使用的数据必须在确定的或可预测的时间内准时获得。

3)I/O的透明性

实时系统对CPU是非常敏感的。换句话说,实时系统中CPU的资源和时间是非常有限而又非常重要的,因此CPU应该是用于执行应用模块和算法而不是用于I/O操作,这意味着与I/O相关的任务需要放在CPU以外独立进行处理。传统的实时通信方式主要有两种:物理共享存储器网络和消息传递网络。

物理共享存储器网络如图2所示。使用高速并行存储器总线将所有的计算机联接起来,所有的计算机存取一个共用的存储模块(物理共享存储器)。物理共享存储器网络的实时特性体现在:具有较小的数据传输延迟、小数据包的通信效率较高、无需加载软件就可完成数据通信、快速的系统重配置、快速的错误恢复以及确定性。消息传递网络,如图3所示,使用连续的通讯连接,使所有的计算机通过其传递消息数据包。这种局域网方法有助于克服许多物理共享存储器的局限性,可以允许集成不同厂商的CPU硬件和支持大量计算机连接。然而其面对实时的数据通讯仍然具有许多的障碍:

1)传输延迟时间大:其数据通信的延时大于物理共享存储器网络。

2)缺乏透明的I/O:大型软件的网络I/O需要消耗CPU时间。

3)缺乏确定的性能:消息传递局域网无法为分布式计算机系统提供和维持同步。

4)错误修复与系统重配置既困难又耗费时间。

图2物理共事存储器网络结构

图3消息传递网络体系结构

4反射内存网络

反射内存网络结合了两种传统网络的优点,摒除了它们的缺点。首先,复制共享存储器网络最大的长处是提供较小的传输延迟、确定性、低的软件开销和快的错误恢复,但是这些优点的增加不是以消弱其他的优势作为代价来获得的,它仍然支持大量的连接节点、支持远距离连接和支持不同厂商提供的主机CPU。其次,对于复制共享存储器网络架构来说,帮助降低系统开发和维修费用是很简单的。除了初始化,一个复制共享存储器网络没有相关通讯的软件,因此只有很少的代码需要编写、调试和维护。反射内存网络主要是由反射内存卡通过光纤传输介质连接而成的,网络上的每台计算机通过在主板上插人一块反射内存卡形成网络节点。反射内存网络的工作原理如图4所示。每块反射内存卡都有自己独立的本地内存,通过局部内存映射机制将本地内存映射到主机内存,用户读写反射内存卡中的数据如同读写主机内存中的数据一样方便。每块反射内存卡又通过网络内存映射,将分布在各个节点卡上的本地内存又映射到一个虚拟的全局内存,从而使得主机在将数据写入本地节点卡内存的同时也写入了其他所有节点卡的内存中。这样,对本地节点卡内存的操作就相当于对虚拟的全局内存进行操作,而这个全局内存是所有分布节点都可共享的,从而实现各个分布节点间的数据传输采用这种方式,所有节点能透明并确定地传送中断和数据包到其他的节点。由于反射内存网络是一个实时的网络系统,不仅可以达到数十兆字节的数据传输率和微秒级的数据传输延迟,且其传输延迟是确定和可预期的,满足了射频仿真系统对于实时性的要求。

图4反射内存网络工作原理图

5 RTnet实时网络

本文中RTnet网络方案采用VMIPCI一5565反射内存网卡及VMIACC一5595HUB(网络集线器)构成的星型网络,网络计算机节点采用WindowsVISTA+RTX实时操作系统。星型网络连接可以保证每个节点随时传递数据,各个节点可以同时写入数据,并且单个节点的故障只能够影响一个设备,不影响全网,容易检测和隔离故障,便于维护,而且任何一个连接只涉及到本节点和中心节点,控制介质的方法简单从而访问协议也十分简单。但是网络上所有反射内存卡都将连接到HUB的自动光纤旁路板上,这种星型连接只是物理上的星型连接,从逻辑上看还是环型连接。而采用WindowsVISTA+RTX实时系统,是因为测试结果表明,该系统下可以最大分配的连续内存地址空问为950M,而在WindowsXP+RTX系统下只能分配出150M左右的连续内存地址空间。1台VMIACC一5595—208HUB机箱背板上有8块VMIPC5565的反射内存卡光纤接口,8块网卡通过HUB自动连成一个完整的整体。构建一个星型反射内存网络主要是设置反射内存网卡和HUB及光纤连接。在反射内存网卡中有许多跳线可以设置,一般只须使用缺省设置即可,需要设置的主要有以下两种:在E1跳线中设置网卡的ID号,不同的反射内存网卡需要有不同的ID号;E3跳线中设置是否为冗余传输,冗余传输可以防止传输出错,有效地减少了网络中的数据丢失,保证传输的可靠性,但同时也降低了网络传输速率。反射内存网卡插入计算机的任意一个PCI槽即可,作为一

个典型的PCI产品,系统可以自动识别。VMIACC5595HUB是由自动光纤旁路板和HUB机箱组成,自动光纤旁路板必须与反射内存网卡的波特率匹配,否则将无法通信。RTnet实时网络结构如图5所示,各个节点计算机根据协议分配各自的机器号、节点号和协议内存首地址。

图5RTnet实时网络

6测试结果分析

数据包大小为70byte,共发送10万个数据包,计时精度为lOOns,设置发送周期为200us。多次测试表明,RTnet实时网络的最大延时为47.05us,且无丢包情况发生,而且延迟时间的抖动很小,99%的数据集中在33—35us之间。实际测试结果符合要求,表明本文中的RTnet实时网络具有很好的实时眭和可靠性。

7结束语

本文提出的基于RTX和反射内存网的RTnet实时网络同时具有光纤内存反射网络的特点以及RTX实时扩展的优势,有着很好的实时性和可靠性,在实时控制和半实物仿真中将会得到越来越多的应用。参考文献

[1]武建伟.双目标阵列控制系统及其校准装置的设计[D].南京:南京理工大学,2004.

[2]孙少军,许成君,江桥.PD雷达导引头目标信号的射频仿真[J].航天电子对抗,2004,l1(3):42_44.

[3]赵惠斌,李小群,叶以民.Linux进程管理体系的研究与分析[J],计算机科学,2003,(30):84-88.

[4]邢国良.基于Linux的实时资源操作系统得设计及实现[D].西安:西安交通大学,2001.

[5]赵宇.基于实时扩展的射频仿真系统实时控制的实现[D].南京:南京航空航天大学,2006.

[6]马志强.虚拟试验系统实时网络环境构建技术研究与应用[D].西安:西北工业大学,2007.

[7]楼俊荣.分布式虚拟靶试系统的实时数据通信与管理技术研究[D].西安:西北工业大学,2006.

作者简介:杨国青(1986一),男,硕士,主要从事实时控制(射频仿真方向)的研究;万顺生(1950一),男,研究员,南京航空航天大学微波实验室主任,主要从事微波天线技术/射频仿真的研究。

 

 

反射内存实时仿真技术网

PMC-5565PIORC-110000  28 MByte Memory, Multimode Transmission
PMC-5565PIORC-111000  128 MByte Memory, Single Mode Transmission
PMC-5565PIORC-210000  256 MByte Memory, Multimode Transmission
PMC-5565PIORC-211000  256 MByte Memory, Single Mode Transmission

 

PMC-5565PIORC 
Reflective Memory PMC Node Card
Ultra-high-speed, fiber optic network for distributed processing using Reflective Memory

PCIE-5565PIORC-100A00  Low-profile PCI Express, 2 GIGA Baud RM w/FO options, 128 MByte memory, multimode transmission. Short bracket option for use in low-profile PCIE slots. Tall bracket kit included for use in standard PCIE slot

PCIE-5565PIORC-200A00  Low-profile PCI Express, 2 GIGA Baud RM w/FO options, 256 MByte memory, multimode transmission. Short bracket option for use in low-profile PCIE slots. Tall bracket kit included for use in standard PCIE slot

 

Ordering Information
PCI-5565PIORC-110000  128 MByte Memory, Multimode Transmission
PCI-5565PIORC-111000  128 MByte Memory, Single Mode Transmission
PCI-5565PIORC-210000  256 MByte Memory, Multimode Transmission
PCI-5565PIORC-211000  256 MByte Memory, Single Mode Transmission

本文共分 1