基于PCI总线的雷达视频采集方案
2008-08-01
作者:李 清 王德生
摘 要: 分析了雷达视频" title="雷达视频">雷达视频采集的必要性和意义,介绍了通过PCI实现高速雷达视频信号" title="雷达视频信号">雷达视频信号的采集实现方案,并分析了方案中的各个模块的功能。
关键词: 雷达视频 数据采集 PCI PC机
在传统的雷达显示终端中所涉及到的视频信号是模拟的,随着计算机技术和IC技术的不断发展,使这种模拟信号的数字化成为可能,使得雷达视频的存储和远距离传输成为可能,并在实际中得到越来越多的应用。在基于这种技术背景下开展了相应的研究。
1 视频采集" title="视频采集">视频采集方案可行性分析
方案的设计主要考虑雷达视频带宽,即距离分辨率。在采集卡" title="采集卡">采集卡部分影响带宽的数据瓶颈在于三方面:AD采样量化、FIFO读写速度和PCI的DMA速度。硬件方案中采用TLC5540,最高采样率可以达到40MHz,采样深度为8bits;FIFO采用IDT72V36100,最高读写速度可以达到133MHz;计算机PCI总线的数据带宽可达到532Mbps,在实际中,由于受硬件环境,如主机板和CPU的影响,采用133Mbps的PCI卡。在PC机部分数据瓶颈主要在于磁盘数据访问速度,普通磁盘的数据访问速度为40Mbps。若数字化雷达视频带宽达到30Mbps、量化深度为8bits,则数据采样率为30MHz,距离分辨率为300,000,000/2/30,000,000=5m,这样的分辨率能够满足一般的导航和警戒雷达。若量化深度降低,则距离分辨率将进一步提高。由以上分析可见所采用方案能够满足视频的带宽要求。
2 系统实现的关键点
2.1方案中的雷达视频数据流程和结构
对于30MHz带宽的数字化雷达视频信号要求实时传输,合理地安排数据的流程非常重要。其流程如图1所示。
由底层到应用程序,雷达数据主要经过三个数据传输过程。(1)由数据采集卡" title="数据采集卡">数据采集卡至设备驱动,在数据采集卡中采用了双FIFO技术,通过DMA单个FIFO一次传输一帧雷达数据,即一个主脉冲正程的雷达回波信号。这里双FIFO的作用在于信号的实时传送,采集卡对FIFO1写入时,驱动程序通过DMA将FIFO2的数据传入BLK2中,此为数据通道CH2,CH1为FIFO1与BLK2之间的通道。在系统中,CH1和CH2分时复用一个DMA通道。(2)驱动程序和显示应用模块的数据交互,采用了乒乓存储区的技术,如图1所示。当DMA占用BLK1时,显示应用程序将BLK2中的雷达视频数据读入,进行数据合并、抗异步干扰处理,并实时显示。(3)驱动模块与数据存储模块的数据交互,这个交互过程和上面相似,不过,对于BLK1、BLK2的访问都要和显示应用程序分时进行。
在时序上,各个数据通道的详细分时关系如图2所示。
如图2所示,在第N+1个主脉冲回波内,数据采集卡将AD变换之后实时数字雷达信号写入FIFO2中(数据排队),通过DMA将FIFO2的数据传入BLK1(CH1),同时将BLK2的数据传入显示应用模块(CH4)和数据存储模块(CH6)。
由于在CH1~CH6中传送的数字化雷达视频数据都有特定的时序,且都是实时数据,故通道中的数据帧格式相对简单,帧头没有同步头和差错控制。帧格式如图3所示。
在帧头高字位给出13位方位码,同时预留出高3位,用以传输方位码的特征信息,如正北信号、扇区信号和图元信号,这些信号在硬件(数据采集卡)中容易实现,能节省软件的处理时间。在目前的系统中,这些特征信息还用不到,在具体到雷达数据的分析时,这些信息能起到很重要的作用。帧头的低字位给出距离信息,包括低4位的量程信息和高12位的距离采样深度。
2.2 数据采集卡的实现
雷达数据采集卡在本系统中起到基石的作用,它将由雷达接收机送下来的模拟视频信号采样量化,经过量程归并后,相对于主脉冲对齐,然后加入帧头信息,通过DMA传输给驱动程序。数据采集卡的功能结构如图4所示。
数据采集卡共有七个主要模块:PCI总线控制模块采用通用芯片PCI9080桥接本地总线和PCI总线;本地总线控制模块CM负责卡内控制信号和状态信号的交互;SYN为外部方位码和主脉冲的同步模块,它根据主脉冲产生AD的采样时钟和量程归并时钟;AD采用TLC5540对雷达视频信号进行采样量化;MERGE模块为量程归并模块;PACK模块将由SYN和MERGE模块送来的方位码和视频数据打包成帧,并排队送入FIFO;FIFO模块将帧结构的雷达数据通过DMA传给驱动程序。在硬件的实现上采用了可编程器件CPLD。
2.3 用CPLD实现双FIFO控制
采集卡中数字化雷达视频信号在推入FIFO之前要经过打包成帧的处理,这个处理过程通过一片EPM7128SLC84-10实现。其内部的控制逻辑如图5所示。
图3中,数据帧的帧头包含方位信息和数据量以及量程信息,这一部分的处理在图5的head模块中实现;视频量化深度为8位,并行推入FIFO为16位,这就需要将数据移位合并,这个过程在body模块中通过两个8位D触发器阵列实现;在主脉冲前沿需要将帧头信息插入,这个逻辑控制通过clk模块中的一个状态机实现。状态机的转移图如图6所示。
状态机的时钟为数据推入时钟d_merge_clk,状态转移通过主脉冲mainpulse_syn和帧数据时钟d_pack_clk控制,其中d_pack_clk通过d_merge_clk二分频得到。通过mainpulse的上升沿判断进入新的一帧数据,通过d_pack_clk的前两个时钟周期(head_sel=1,2)插入帧头。状态机的逻辑仿真如图7所示。
对于双FIFO的乒乓操作,也是通过一个状态机实现的。状态机转移图如图8所示。
状态机的时钟为d_merge_clk,通过主脉冲mainpulse_syn控制状态转移,对FIFO1和FIFO2进行轮询操作。状态机的逻辑仿真如图9所示。
本文论证了雷达视频实时数据采集的实用性和可行性,并提出了一套切实可行的方案,对方案中的关键点作了必要的阐述。此项技术的推广,无疑将提高雷达视频终端的兼容性、可移植性和通用性。
参考文献
1 郑 渝.基于帧结构的雷达终端软件化的研究.北京:清华大学电子工程系,2002
2 马晓岩.雷达信号处理.湖南:湖南科学技术出版社, 1999
3 曾繁泰. PCI总线与多媒体计算机. 北京:电子工业出版社,1998