设为首页 | 加入收藏
当前位置: 主页 > www.44722.com >

PXI总线中频数字化仪系统设计

时间:2021-08-25 11:08来源:未知 作者:admin 点击:

  杨志兴,王瑞霞,高长全(电子测试技术重点实验室,山东 青岛 266555)

  摘 要:针对PXI测试系统构建中需要的高速数据采集设备,提出一种基于PXI总线的中频数字化仪的设计方案。该设备可以实现400 Msps的实时采样率和14位的采样精度;软件开发模式采用上位机应用程序和底层动态库相结合的开发模式,方便不同用户的定制。驱动程序通过WDM开发,采用Block DMA实现数据的上传。经过联合调试,本系统稳定工作在Windows平台下,实现了数字化仪要求的各项功能。不仅满足当前项目的需求,还可应用于雷达、电子对抗等PXI自动测试系统构建中。

  近年来随着科技的不断进步,高速数据采集系统不断地向高精度、高速率、小型化等方向发展。尤其在一些特定场合,比如舰船、飞机等环境下,其对测试设备的小型化提出了更高的要求[1]。而PXI由于其自身的架构及特点[2],特别适合这种对体积要求苛刻的环境中。其中PXI中频数字化仪作为模块化测试系统的重要组成部分,由于其技术难度高、开发设计难度大成为系统集成中的短板,相关产品只能通过国外采购,主要存在如下的问题:采购周期长、成本昂贵、技术不可控,维修困难,严重制约着PXI模块化系统的自主发展。

  本文基于“虚拟仪器”的设计理念并结合近期从事的PXI合成仪器项目需求,金苹果论坛一肖,提出一种基于PXI总线的中频数字化仪实现方案,即可满足软件无线电系统构建的需要,同时也可作为单独PXI模块进行数据采集、处理和分析。

  本文研制的中频PXI数字化仪模块是一个单槽3U尺寸模块,14位垂直分辨率,最高采样率达400MHzSa/s。其总体硬件框图如图1所示。

  主要包括:信号调理部分、抗混叠滤波、DDS部分、A/D转换部分、FPGA控制部分、PCI接口部分和电源等部分组成。其中:信号调理部分实现模拟信号的放大和滤波;ADC部分主要实现信号由模拟到数字信号的转换;FPGA部分主要是完成数字下变频、包络检波以及电路的控制等;PCI总线接口作为数字化仪与PC机的接口,实现数字化仪和上位机软件的信息交互,包括命令下发和数据上传等。

  整机工作原理如下:在触发信号到来之后,首先对输入中频信号进行调理,完成模拟中频信号的程控增益控制、抗混叠滤波等,预处理后的中频信号经过高速ADC采样,采样数据送入FPGA进行数字下变频操作变换到基带形成IQ信号,之后根据需要进行复数FFT操作得到频谱数据存储到板载缓存中。此时FPGA将使本地信号(LINT#)信号有效,引发PCI9054的本地中断,接着会触发PCI中断信号INTA#,向计算机发送中断请求。主机CPU响应中断以Block DMA方式读取FIF0中的频谱数据,从而完成一次数据传输。最后在上位机软件中进行处理和显示。

  目前主要存在2种方案实现PXI接口电路[3]:①采用可编程逻辑器件;②采用专用的PCI接口芯片。在本设计中考虑到数字化仪板卡的体积、成本和开发周期,采用PLX公司的专用的PCI接口芯片PCI9054来实现PXI接口,接口实现示意图如图2所示。

  为了适应不同的局部处理器,PCI9054局部总线种:C模式,M模式,J模式。本文采用C模式(MODE[1:0]=00),即地址线]。本设计中发送命令时工作在PCI Target模式,而读取数据的时候则工作在DMA模式。在DMA方式下,数据传输不同于普通的I/O读写方式,它是由PCI9054接管PXI总线,负责实现数据在CPU和硬件设备之间进行数据传输,而无需CPU的干预。本设计中只涉及数据从Local侧到PCI侧的传输,因此选择DMA0通道并采用block DMA的传输方式实现FIFO缓冲区的频谱数据的读取操作。

  数字化仪程序的工作流程如下:首先是数字化仪硬件的初始化,完成后,由上位机软件根据用户选定的功能和输入的参数形成控制命令通过驱动程序将其下发到硬件板卡。PXI板卡进行相应的参数分解形成有效的硬件动作命令实现数据的采集,采集一定量的中频数据后形成硬件中断给驱动程序,上位机响应中断并通过DMA的方式将数据读取到上位机软件中,从而完成一次有效的数据采集和传输。之后再由上位机软件进行相应的处理、显示和存储等功能。

  [5]生成驱动程序框架,之后需要根据功能要求来添加相应的代码。驱动程序的开发涉及到硬件访问、中断控制和DMA传输等功能模块。限于篇幅,本文重点阐述中断和DMA的实现过程。

  从上文介绍的数字化仪整机运行原理中可以看出,数字化仪的数据采集过程相对于上位机软件的运行,是一种完全异步的过程。为了实现两者的同步,需要借助于中断来实现。本设计中需要处理的中断类型有2种:①本地中断,即当FIFO中的数据采集半满之后,由FPGA通过LINT#信号发给PCI9054;②DMA中断,当上位机软件收到PCI9054的本地中断后,开始启动DMA读操作。当DMA传输完成后由DMA中断控制器产生。两种中断存在先后关系,只有2个中断的协调配合才能实现1次中频数据的正确传输任务。

  [6](ISR,Interrupt Service Routine)中进行中断源识别,再进行对应处理。本设计中的中断处理流程如图所示。

  DriverWorks提供了3个类来实现,分别是:KDmaAdapter,KDmaTransfer,KcommonDmaBuffer。其中,KdmaAdapter类用于建立1个DMA适配器,标明1个DMA通道的特性和提供串行化访问的服务;KDmaTransfer类用于控制DMA的传输,启动1个DMA传输、DMA传输数据缓冲区物理地址和传输字节数以及DMA传输结束后数据由公用缓冲区拷贝到应用程序数据缓冲区;KcommonDmaBuffer类用于申请系统提供的公用缓冲区

  [9]。由系统的I/O管理器将这个请求封装成一个相应的请求包(IRP),然将其传递给驱动程序。驱动程序首先将其进行队列化,形成1个新的串行IRP传递给SerialRead例程[10],在该例程中,通过初始化KDmaTransfer类的实例并在OnDmaReady回调函数启动DMA传输和判断传输是否完成。限于篇幅,本文只给出实现DMA的关键代码:

  整个软件从功能上可以分为控制测量模块、数据处理显示模块和用户操作模块。其中控制测量模块主要实现命令的下传以及采集数据的上报;数据处理显示模块主要是对采集到的信号进行信号处理,包括加窗、FFT、轨迹运算、峰值处理、信号录制以及处理结果的显示等;用户操作模块则是提供人机交互的接口,用于将用户的操作指令进行合规性分析,高手联盟4381开奖记录,并将用户的操作意图正确设置到设备中。最终实现的上位机软件成果如图8所示。

  本文所研究的中频数字化仪是一种基于PXI总线的模块化中频信号采集仪器,具有高采样率、高分辨率、大数据存储容量以及快速的数据传输等技术,技术实现上完全自主可控。在软件设计上采用虚拟仪器的设计思想,按照模块化和层次化进行开发,分别完成了上位机软件设计和底层驱动程序开发。目前,本系统可以稳定工作在Windows7平台下,实现了中频数字化仪要求的各项功能,不但满足了当前的PXI测试系统构建的需要,而且提供了一个较为通用的驱动程序包,可以应用到其他需要中频数字化仪的PXI测试系统中。

------分隔线----------------------------
白小姐资料 白小姐开奖结果 白小姐3438开奖现场 www.810456.com www.44722.com
Power by DedeCms