APP下载

基于导航卫星信号的采集系统设计与实现

2012-07-25李献球

微处理机 2012年3期
关键词:背板板卡信号处理

李献球

(中国卫星导航定位应用管理中心,北京100088)

1 引言

卫星导航涉及千家万户,各类用户不断对其提出更高的精度、完好性、连续性、可用性等要求。地面系统作为卫星导航系统的监制中心,需要对导航卫星的工作状态实现24*7小时的全天候、全时段监控,并且能够为地面工作人员决策提供快速分析结果,这就对导航卫星信号数据采集系统提出了新的要求。

传统的数据采集系统多采用CPCI架构,数据采集、数据分析、数据存储、数据回放各部分相分离。这种结构虽然设计简单,稳定性高,但是却具有传输带宽低,采集速率低,系统体积大,维护困难等一系列缺点。针对导航卫星信号数据采集的新要求,提出一种集成了采集、分析、存储、回放为一体的高速数据采集系统。

该系统采用PCIe架构,整个系统除机箱外,仅需要两套PCIe板卡。一套PCIe板卡采用背底板结构,可以完成数据采集、数据实时处理、数据回放等功能,带宽为全双工1GB;另一套PCIe板卡为固态存储板卡,采用全flash代替传统的磁盘完成数据存储,带宽为全双工900MB。

2 系统设计

为了提高系统实现的灵活性,降低系统实现难度,采集板卡系统采用了背底板结构[1]。背板主要实现信号采集和信号处理功能,底板主要实现与上位机之间的数据传输功能,背板与底板之间采用高速并行传输接口相连接。系统有两种工作模式:采集模式和回放模式。采集模式下,背板信号处理单元处理AD采集的信号并进行处理,然后将处理结果传输到上位机显示和将采集的数据传输到上位机保存;回放模式下,背板信号处理单元处理上位机回传下来的数据,同时将处理结果上传到上位机进行显示。采集板卡系统的系统实现框图如图1所示。

图1 板卡系统框图

3 电路设计

在整个系统中,背板FPGA承担了大量的信号处理任务,而底板FPGA主要实现逻辑功能,因此器件选型时有所侧重。背板FPGA选择Xilinx公司生产的Virtex5系列XC5VSX95T,它片内集成了8Mb的BlockRAM,同时有640个DSP48E Slice资源,非常适合于实现复杂的信号处理算法。底板FPGA选择XC5VLX50T,它集成了一个PCIe Endpoint Block,配合Xilinx IP核,可以快速实现PCIe X8接口。

底板承担了背板与上位机进行数据传输的主要工作。由于采集信号频率较高,有大量的数据需要传输到上位机,因此系统采用了PCIe X8作为采集板卡系统与上位机的接口[2]。PCIE是新一代的总线接口,采用目前业内流行的点对点串行连接,可以实现全双工2GB/s的单方向理论传输速度。但由于PCIe属于突发传输方式,并且突发传输的数据量比较大,无法用FPGA内部的RAM缓存,因此需要用大容量缓存才能保证可靠传输[3]。而在回放模式下,PCIe同时有上行和下行的数据,因此需要用两个大容量缓存分别存储上行和下行的数据。

背板和底板之间采用了高速并行传输接口传输数据,这种接口是Xilinx公司研发的适合短距离大数据量传输的需求,单向数据传输速率可以达到2GB/s,实现时采用Xilinx公司的IP核,可以简单快速地实现。

对于采集系统而言,时钟是影响系统性能的关键。外部提供给系统的时钟是一个由原子钟产生的高稳定度低频率时钟,而ADC所需要的时钟是一个高频率时钟,因此需要用一个锁相环将时钟频率提高。系统选用了AD9518进行频率合成,产生高频率的采样时钟。AD9518是ADI公司生产的6通道高性能时钟产生芯片,它的输出时钟抖动仅为225fS,通道与通道之间的时钟可以保持高度的相位一致性,为实现系统的高性能奠定了基础。

模数转换器(ADC)是采集系统的关键器件之一。系统选用了 ADS6149实现数据转换功能。ADS6149是一款量化精度为14位,采样时钟频率高达250MHz的模数转换器,具有优异的性能。在最大采样率工作时,它的总功率消耗仅为687mW,对实现系统的低功耗有重要影响。它内部集成了直流偏置校正功能,能够校正前端放大器引起的直流偏置。该芯片的输出数字信号通过DDR方式传输到FPGA,这使同步时钟信号频率降低了一半,提高了传输可靠性。

4 FPGA程序设计

系统采用背底板的结构实现其功能。按照系统功能划分,背板主要实现信号采集和信号处理,底板主要用来实现总线控制协议,实现和上位机的交互。因此在器件选型方面,背板 FPGA选用XC5VSX95T,底板选用XC5VLX50T。

背板的程序主要包含AD芯片控制程序、时钟芯片控制程序、信号处理模块和背底板传输控制协议[4-5]。由于AD的采样率为200M左右,且14位的AD数据经过信号处理模块后变成IQ数据,采样率变为40M,但是数据的位宽加倍到28位。并且为了区分三个通道的数据,需要在数据信息中添加标志位。因此一个通道的数据量有160MB/s,三个通道的数据量总和约为480MB/s。再加上三路突发数据(瞬时数据率为160MB/s),在背底板之间传输的最大瞬时速率为960MB/s。为了满足这种高速突发的特性,在背底板之间的传输采用高速并行传输协议,17对差分线(16对数据线和一对时钟线),每一对差分线的端口速率为800Mb/s,理论最大速度可以达到1.6GB/s。

底板的程序主要包含并行传输协议的接收端、DDR2控制器和PCIE-DMA控制器。由于PCIE协议本身突发传输的特性,需要在PCIE端口放置大容量的缓存。PCIE-DMA控制器是全双工链路,为了实现同时采集和回放的特性,需要在PCIE端口放置两个DDR2控制器,分别给采集和回放使用。考虑到硬件布局布线的难度和数据速率的关系,两片DDR采用一个DDR模块和一片DDR颗粒。如图2所示。

图2 FPGA结构框图

根据以上数据特点,总共有三种不同类型的数据:AD数据、突发数据、命令数据。AD数据是持续的480MB/s数据流,突发数据约30s钟传输一次,命令数据约为5MB/s的持续数据流。这三种数据在经过并行传输端口后,已经混在了一起,区分这三种数据只能根据各自的标志位。这需要在上位机的层面上拆分,因此为了加快上位机的拆分速度,在底层利用一个较小容量的缓存对数据进行打包。保证在1KB以内的数据都是同一类型的数据,这样上位机在进行拆分时,就不用按照Byte流进行扫描,而是以KB为单位进行扫描[6]。

5 软件设计

上位机软件由PCIe驱动和应用程序组成,其中PCIe驱动是硬件和应用程序沟通的桥梁,应用程序为用户提供操作的界面。

图3 整体系统框图

5.1 PCIe驱动设计

驱动程序负责将用户指令下发到硬件,并收集硬件相关信息上报到用户。PCIe BAR0空间中自定义的寄存器,是驱动程序和硬件之间交互的纽带。这些自定义的寄存器包括DMA物理连续缓存起始地址、DMA长度、DMA中断使能、DMA开始结束的命令以及DMA传输过程中的设备状态。在系统启动时,驱动程序将BAR0空间中的寄存器值自动映射到内存,并将逻辑首地址和逻辑地址偏移量告知用户。用户只需改变或者读取逻辑地址中相应的寄存器值就可以控制整个PCIe DMA的传输过程。

5.2 应用程序设计

应用程序主要完成以下功能:DMA数据的拆分与存储、DMA数据的读取和回放、用户命令下发、数据队列的建立和调度、USB数据传输及Socket传输的创建和调用。DMA数据的拆分与存储是将采集到的DMA数据包按照不同的标志位解析到不同的缓存之中,当缓存达到容量8M的时候,将8M数据存入到相应的文件之中或者通过数据队列将数据送给用户。DMA数据的读取和回放是将磁盘文件中的数据读取到已经开辟好的物理连续缓存之中,并把缓存首地址和缓存长度写入相应的PCIe BAR0空间中的寄存器中,然后通知硬件将数据取走,并在中断线程中等待DMA中断的到来。用户命令下发是将用户对应的命令,如用户时间、复位等命令通过一定的交互手段下发到硬件。数据队列的建立和调度是为了满足用户对某一类型的数据访问时间不确定性的需求。另外,应用程序还需要将USB接口上传的数据通过Socket方式传输到用户需要的IP地址中。

6 结束语

提出了一种针对导航卫星信号的数据采集系统。该系统基于PCIe架构,集成了数据采集、处理、存储和回放等功能。采集部分能够采集瞬时最高960MB/s的数据,将其通过DSP处理之后,将数据存储到全固态阵列上,并且能够通过PCIe接口进行数据回放。该系统具有数据采集率高,带宽高,集成度高等优点,可以推广应用到雷达、通讯、侦查等诸多高端应用领域。

[1] 刘兴旺,沈绪榜.一种片上系统(SOC)时钟同步设计方法[J].微电子学与计算机,2005,22(9):170-172.

[2] 颜建峰,吴宁.基于PCI总线的DMA高速数据传输系统[J].电子科技大学学报,2007,36(5):858-861.

[3] 马鸣锦,朱剑冰,何红旗,杜威.PCI、PCI-X和 PCI Express的原理及体系结构[M].北京:清华大学出版社,2007.

[4] Wang Sen,Tang Bin,Zhu Jun.Distributed arithmetic for FIR filter design on FPGA[J].Communications,Circuits and Systems,2007,13(11):620-623.

[5] S Haykin.Adaptive Filter Theory,4m edition[M].Upper Saddle River,NJ,Prentice Hall,2002.

[6] J Gray.Designing a simple FPGA-Optimized RISC CPU and system-on-a-chip[J].Fundamental Science and Application,2006,13(1):174-180.

猜你喜欢

背板板卡信号处理
乐凯太阳能电池背板:强劲支持光伏产业
车载控制器CVRE板卡显红故障分析及处理
《信号处理》征稿简则
《信号处理》第九届编委会
《信号处理》征稿简则
《信号处理》第九届编委会
光伏含氟背板隐忧
基于组态王软件和泓格PIO-D64 板卡的流水灯控制
层压过程对背板粘接涂层的影响
一种基于光纤数据传输的多板卡软件程序烧写技术