1引言
激光告警机是被动光电侦查设备,其功能是探测目标激光信号的性质,如波长、方位等,本系统能够完成探测并提取激光波长信息的功能。在激光波长测量系统中,激光信号从CCD相机输出到信号处理器的时间和处理器的处理时间是能否做到实时监测激光波长的两大关键,即使采用高速单片机也限于它的串行处理模式和较长的取指时间,无法满足实时测量的目的,因此为实现在几毫秒内就对目标激光信号的波长做出反应只能寄希望于高性能的DSP器件或FPGA器件了。告警系统中,相机的接口为器件的选择则也提出要求:采集器件要支持LVDS 电平,否则要加入电平转换芯片,这势必会带来数据传输的延时;此外应用FFT进行数据处理时,由于FFT在算法上具有可重复性和可并行处理的特点,为实现实时性处理,要求选择具有并行处理功能的处理器。在设计中选用Xilinx公司的Sp3系列FPGA作为控制、处理器,将FPGA用在本系统中的好处有: (1)高密度FPGA可在一块片子上实现多个子模块,有效减小激光告警接收机的体积;(2)FPGA具有成熟的时钟管理体系,和精确的时钟控制体系,能够实现采集与处理的无缝连接,从而提高系统可靠性;(3)FPGA支持多种信号标准,尤其在告警系统中FPGA可将接口设置为LVDS型,使得FPGA与相机的通信更加直接,避免了以往采用电平转换芯片的相关工作;(4)FPGA具有并行处理功能,能够实现流水作业,可减少信号处理时进行FFT运算的时间。
2原理概述
相机将探测到的激光信号通过Cameralink接口方式传递给FPGA,FPGA控制时序产生来完成以下工作:向CCD输入时钟信号;通过触发端设置 CCD积分时间;倍频相机的STROBE信号实现接收数据的串并转换;将并行数据在读使能的控制下从FIFO中转入块RAM。为提高激光告警机的响应时间该系统充分利用FPGA可流水作业这一功能,在数据接收端提供两个1024个单元的数据存储器交替工作,通过在软件上设立标志位来实现对存储区间进行切换。在数据存储和数据处理时,当FPGA用1 区进行采集数据的第i帧时,同时2 区进行第i-1帧数据的处理,当两者同时结束后,接着又用2 区进行第i+1帧数据的采集, 同时1 区进行第i 帧数据的处理, 这样交替工作,形成流水线作业。由于相机采集速率和块RAM写入时间的不同,在FPGA内部采用IP 核生成两个FIFO为两路数据的接收实现缓冲来取得同步。块RAM的写入、读出时序和地址发生器由VHDL语言编写完成。数据的处理通过在时钟的同步下逐一读取RAM中的数据,采用十级流水基-2算法实现1024点的快速傅里叶变换,得出输入激光信号的频谱特性。激光告警机的采集和处理系统框图如图1所示。
3系统设计
整个系统由两部分构成:数据采集模块,数据处理模块。
3.1 CCD相机数据采集模块
在设计中采用ATMEl公司的AViiVA M2 CL相机,该相机采用Cameralink接口,Cameralink技术的核心是美国NS(National Semiconductor)提出的一种高速数据传输方法—Channel Link技术,该技术主要用于数字图像数据的高速传输,采用LVDS信号模式,LVDS低电压摆幅差分模式具有高速传输数据时交叉干扰小、EMI 干扰小等优点,最高传输率可达2.38Gb/s。该相机的接口定义为:四对LVDS线,用来做FPGA对相机的控制;两对LVDS线,用于相机和FPGA 之间的通信,速度可达9600波特率;四对LVDS线,用于输出数据和数据的位同步、帧同步信号。选用XC3S400型的FPGA,它具有丰富的接口标准尤其是支持LVDS 信号标准,可与Cameralink接口的相机直接连接。相机工作方式的设置由FPGA基于RS-232协议串行通信来实现,采用全双工,没有握手信号的异步串行方式,波特率固定在9600Hz,每帧数据由一个起始位,8个数据位,一个停止位组成。相机的积分时间和输出增益都是可以根据需要设置为不同的值。对于相机工作的触发方式由FPGA外部触发,做到FPGA与相机共用同一个全局时钟。