基于VXI总线的宽带测试仪终端控制系统研制_第1页
基于VXI总线的宽带测试仪终端控制系统研制_第2页
基于VXI总线的宽带测试仪终端控制系统研制_第3页
基于VXI总线的宽带测试仪终端控制系统研制_第4页
基于VXI总线的宽带测试仪终端控制系统研制_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于VXI总线的宽带测试仪终端控制系统研制             基于VXI总线的宽带测试仪终端控制系统研制沈文博1,陆增援1,吴义宝1,刘树彬1,王砚方1,李占有2 (1中国科技大学近代物理系,合肥,230027;2深圳华为技术有限公司,深圳,518055)    摘  要:介绍了一种基于VXI总线的宽带网络测试仪终端控制系统的硬件和软件设计。该系统将带有读写控制的双口RAM作为邮箱,利用自定协议的“邮件”与嵌入式系统通信,交换控制

2、信息和响应信息。其主要设计目标是提供用户与宽带测试仪之间高速友好的接口,该接口已全面实现。关键词:VXI总线;终端软件;仪器驱动器;邮箱;信号量;嵌入式系统 网络技术的发展日新月异,宽带产品的种类越来越多,相应地对这些产品的测试需求也日益增长。本文以信息产业部的“ATM交换机设备测试规范”1为主要依据,研制了基于VXI总线的宽带网络测试系统。该系统作为一个C尺寸寄存器基VXI模块插在VXI机箱里,并通过光纤接口连到外部待测宽带网络。本文主要介绍该测试仪的终端控制系统及其实现。 1终端控制系统硬件实现本终端控制系统是“基于VXI总线的155M622M ATMPOS宽带测试仪”中的一部分,主要功能

3、是提供用户和测试仪功能主体之间的接口。用户从终端PC上的软面板2发出各种控制命令和数据,这些命令和数据被封装成具有特定格式的“邮件”,通过一个双口RAM做成的“邮箱”发送到测试仪上的嵌入式CPU,该CPU接收并解释邮件,取出命令或数据,执行相应的操作。终端控制系统的功能模块视图如图1所示。整个终端控制系统包括:终端PC、VXI机箱、VXI接口模块、邮箱通信模块、嵌入式CPU小系统、外围器件,其中VXI接口模块、邮箱通信模块、嵌入式CPU小系统和外围器件都在VXI插板上。采用存储器映像IO方式,把作为邮箱的8 K字(一个字的长度为16 bit)容量的双口RAM映射到VXI的16位地址空间,实现对

4、邮箱的读写。终端计算机通过1394电缆与VXI零槽控制器相连,零槽控制器通过VXI背板总线连接到系统板上的VXI接口模块,这样,终端控制系统就与系统板在物理上建立了控制通道,从而实现了用户和系统之间的接口。VXI接口模块除了必要的总线驱动和缓冲(比如74F244单向缓冲和74F245双向缓冲)外,主要功能由一片FPGA来实现,按照VXI总线的标准定义完成寻址和数据读写。该FPGA连接VXI的P1,P2连接器和双口RAM的一个端口(双口RAM的另一个端口接嵌入式CPU)。主要功能如下:(1)地址译码控制用户可以通过拨码开关设置本VXI模块的逻辑地址。FPGA用VXI驱动的地址总线的高8位和拨码开

5、关设置的逻辑地址一起译码出板选信号和经锁存的地址信号。(2)数据传输控制FPGA按照VXI定义的读写时序,并配合双口RAM的读写时序,保证正确驱动双口RAM的读写信号和DTACK(数据应答)信号,实现数据传输。(3)其他控制信号FPGA可以根据VXI总线的状态提供本模块复位信号等其他控制信号。    (4)该FPGA除了完成基本的寻址和数据操作外,还含有一个ROCK中断器,向VXI总线提供7个优先级可选的中断请求信号。用户可以通过拨码开关设置本模块的中断优先级,7为最高优先级。物理邮箱通过一片双口RAM来实现,该RAM支持信号量机制,VXI和嵌入式CPU可以不冲突

6、地实现对该RAM的读写,完成邮箱通信。嵌入CPU小系统所控制的外围器件包括一些实现处理功能的FPGA和底层物理器件。由于FPGA的可重配置特性,处理FPGA的内容可以通过邮箱通信动态重新加载,这样就可以从终端来控制系统完成不同的功能。处理FPGA和物理器件的内容都要由嵌入CPU初始化和定时查询,并及时上报到终端。 2终端控制系统软件实现终端软件界面的开发工具选用了美国National Instruments(NI)公司的LabWindowsCVI3。它是一种具有扩展仪器驱动库的应用软件包,使用的编程语言是C。由于C语言是一种标准语言,所以开发出来的软件具有开放性和可重用性。本系统的软件分三个结

7、构层次:(1)用户软面板;(2)应用程序;(3)底层驱动函数库。用户软面板和应用程序可以统归为终端应用层,调用底层驱动函数完成数据和命令的传送。驱动函数处理与硬件交互的全部细节,完成对硬件最基本的寻址和读写。终端应用层只需要正确使用驱动函数的接口。在本系统中,驱动函数的工作:(1)实现16位地址空间寻址;(2)对双口RAM的信号量的获得和控制;(3)在获得信号量的情况下对邮箱的读写。为了便于移植和规范化,VXI总线即插即用联盟(VPP)制定了驱动函数的编程结构和即插即用规范。本驱动函数库的编制符合HPVISA(版本11)4标准。这是一个虚拟仪器的IO标准,为不同厂家的VXI模块提供完全的兼容性

8、5。    当用户在软面板上操作了某一个控件,就产生一个事件,触发与该控件关联的应用函数,这相当于一个中断。该应用函数调用底层的驱动函数完成数据和命令的传送。各应用函数的主要功能是查询和读取邮件、解释读取到的邮件并做相应的处理、将从软面板产生的命令和数据封装成邮件并发送给CPU等。函数的调用关系和执行流程如图2所示。可以用一个实例来简要说明软件的分层和调用情况(为了清晰起见,函数表示都省略了参数,但保留了函数原型):缺省情况下程序一直在查询有无告警邮件可以读取。假设用户更新了CPU应用程序并需要重新下载,其在软面板3上选中VXI模块,点击鼠标右键并选择“下载CPU

9、应用程序”的菜单控件,触发与之对应的函数ViStatus FUNC ATMPOSdownload()并开始顺序执行该函数。以上的操作属于应用层。函数ATMPOSdownload()将调用两个驱动函数ViStatus Vxiconfig()、ViStatus checksingleresp(),被调用的两个函数的作用分别是将设置命令和参数封装成邮件发到邮箱和检测响应邮件。当需要下载的程序用Vxiconfig()函数发送完以后,程序判断这是一个需要响应的邮件,就调用checksingleresp()检测响应邮件的到达,一旦检测到则接收邮件并返回到ATMPOSdownload()将响应信息显示到终端

10、软面板。在Vxiconfig()和checksingleresp()两个函数的内部又分别包含了判选信号量的操作和读写指针的修改。以上的操作属于驱动层。当函数ATMPOSdownload()执行完毕,又返3邮箱通信实现31邮箱地址分配邮箱的物理实体是位于VXI插板上的大小为8K字的双端口RAM。终端PC(通过VXI)和CPU均可对该双端口RAM进行读写,邮箱的大小可以根据需要进行扩展。    邮箱地址分配如图3所示。将8 K字的双端口RAM从逻辑上分为大小均为4K字的两个逻辑邮箱。一个邮箱分配给VXI,VXI对该区写入邮件,CPU查询读取。另一个邮箱分给CPU,CP

11、U对该区写入邮件,VXI查询读取。邮箱中的VXI邮件区和CPU邮件区都分为大小为128字的块(BLOCK),各区的块按照环形队列的方式组织。每个区都有两个相关的变量RCOUNT(读计数)和WCOUNT(写计数)用来指示该区当前的读写位置并判断邮箱的空满。这两个变量初始化的时候均设为0,每次对该区写入一个邮件时,WCOUNT加1,到达该区的最后一个块后返回到第0个块。如果发现(WCOUNT1)等于RCOUNT,则说明该区已经写满,将不再对该区进行写入,写操作等待或放弃。当接收方读取一个邮件时,由对应的RCOUNT决定读取的块号,如果RCOUNT等于WCOUNT,则说明邮箱已经空,否则读取一个邮件

12、以后RCOUNT加1。双端口RAM器件选型为IDT7025。该器件内部集成有8个二进制信号量。这些信号量可以分配给双端口RAM的任何一边。信号量机制可以解决双方对双端口RAM的读写控制。本设计使用了2个信号量,VXI邮件区和CPU邮件区各分配1个。读取和写入邮件都要经过信号量判选。保证不会出现双方同时对同一地址操作而得到不正确的值,导致误判。32邮箱协议制定在这个设计中我们采用了自定义的邮箱协议实现VXI和嵌入式CPU的通信。通信双方的数据和命令都按协议封装成邮件传递。规定每个邮件的有效长度不可以超过一个块的长度,即128个字。如果实现某个功能的数据大于一个块,将其分成多个邮件发出。协议规定邮

13、件的结构如图4所示。图4中,邮件有效长度指包括邮件头在内的邮件有效长度。邮件类型指邮件的类属。命令类型指命令在具体某个类属中的编号。邮件类型和命令类型共同决定邮件的具体功能。流水号:命令下达时,由VXI分配并填充,发送命令响应时带回,以实现错误检测等功能。是否结束标志用在多邮件情况,指示多邮件的最后一个邮件。邮件序号表示多邮件中的第几个邮件。邮件内容是邮件的承载信息。    图5是一个协议邮件的实例。对该邮件的说明如下:邮件有效长度域为FFH,表示这个邮件的有效长度为128个字(从0开始算起);邮件类型域和命令类型域都是01H,这两个域联合起来表示该邮件是一个下载

14、CPU应用程序的邮件,嵌入式CPU收到这个邮件以后将该邮件解释为应用程序下载到CPU的外围FLASH存储器中;流水号域为00FEH;是否结束域为00H,表示该邮件不是一个结束邮件;邮件序号域为0001H,表示这是一次多邮件传送的第二个邮件(从0开始算起);其余部分为邮件内容,即需要下载的程序代码。33邮箱读写判选读取和写入邮件都要经过信号量判选。只有得到信号量的一方才能进行操作。信号量被分配了特定的地址,与存储空间地址互不重叠。申请信号量的方式:定义信号量的值为0表示有效。首先往信号量所在地址写0,然后读出信号量判断是否为0。如为0,进行邮件操作;否则等待,并循环申请信号量。邮件操作完毕,读写

15、计数加1,释放信号量。 4结束语在“基于VXI总线的宽带测试系统”的终端控制系统中本文采用VXI总线平台和LabWindowsCVI终端软件开发环境。宽带测试系统用于测试流量为622M155M的ATM信元和POS包,提供一个虚拟的网络环境或测试高速网络设备。从终端计算机要发出大量的网络测试信息和物理器件配置信息,测试仪也将返回大量的网络响应信息和中断信息,并要求及时地得到响应和显示。使用VXI总线和LabWindowsCVI编程环境,在速度和界面友好性方面都得到了很好的满足,同一机箱内更换模块方便,系统集成度和扩展性都较高6。参考文献:1中华人民共和国信息产业部邮电技术规定YDN1031998 ATM交换机设备测试规范S北京:人民邮电出版社,20012刘树彬宽带网络测试系统的研制D合肥:中国科技大学近代物理系,20023National instrumentsLa

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论