基于IBOB的射电望远镜宽带数字频谱仪系统的设计与测试
2010-01-25刘东亮JohnFordGlenLangston南仁东
刘东亮, John Ford, Glen Langston, 南仁东
(1.中国科学院国家天文台, 北京 100012;2.美国国立射电天文台(NRAO))
现有的射电天文仪器是高度专业化的,是按照个人应用的需求而被定制、综合而专门研制的。因此仪器一般都需要3~5年的设计、施工与调试周期,在可以被交付使用时,按照电子业的摩尔定律仪器已处于被淘汰的阶段。针对这些弊端,以美国加州大学伯克利分校为主的CASPER项目组通过结合现代工业界硬件的发展与开发通用的天文信号处理程序库,大大缩短了射电天文仪器的研发周期,提高了使用效率,从而更好地满足新一代射电天文对高性能实时数字信号处理的要求。在国外,如GBT,Arecibo,艾伦望远镜阵列(ATA)[1],毫米波天线阵(CARMA),ERO阵列和SKA阵等都已经采用和计划采用CASPER项目的IBOB与BEE2[2]以及下一代数字后端系统;在国内,香港大学[3]和乌鲁木齐天文站[4]等也已经广泛开展基于通用平台的射电望远镜数字频谱仪系统的研究工作。
IBOB是一种基于Xilinx Virtex-Ⅱ Pro 2VP50 FPGA的数字信号处理系统[5]。它拥有两个Z-DOK接口,可以接驳多种I/O板(包括双路1GSa/s的采样卡或者四路250MSa/s的模数,数模转换卡)。在射电天文学方面的应用主要为高速采样量化信号,频带调制,多相滤波,傅里叶变换和对数字信号的高速传输(通过两个10Gb网络端口(CX4)将数据以UDP包形式输出),输出端可接驳BEE2系统、交换机和高速网卡等[6]。综合以上特点,采用IBOB平台设计宽带数字频谱仪系统。
1 宽带数字频谱仪系统的设计
1.1 数字频谱仪系统的基本原理
数字频谱仪系统的主要任务是将天线接收并已调制到基频的宽带信号采样、量化(编码)之后通过多相滤波器组将宽带信号分解为一定时频分辨率的窄带信号,重新排序后将这些信号传输给数据处理和记录系统。基于IBOB平台的数字频谱仪系统如图1,系统由3部分构成:采样,滤波,数据封装和传输子系统。采样系统采用Atmel/e2v(AT84AD001B)的双路1Gsps模数转换芯片,在interleave模式下可以实现单路2Gsps采样速率。滤波系统主要由多相FIR和FFT构成,FFT变换后的子通道数据依次按8bit实部和虚部排列构成64bit数据带宽,经过数据流调整后传输到2个10Gb传输端口进行交替UDP数据封装。在高速采样模式下(interleave模式),由于传输系统需要2个全局时钟周期来完成一次UDP封装(参考Xilinx手册),所以在输入带宽大于400MHz且单个10Gb传输端口输出,或输入带宽大于800MHz且使用双传输端口输出时,需要引入累加器压缩数据后再传输。2个10Gb网络端口可以依次传输按照不同目标IP地址发送UDP包,通过交换机或者直接连接10Gb网卡,实现数据的传输。
1.2 双路400MHz,2028通道,16IP输出数字频谱仪系统的具体设计
在Simulink平台下,调用Xilinx System Generator函数库和CASPER与BEE2函数库[7],依次连接ADC、PFB和FFT模块,ADC模块的时钟频率为800MHz(400MHz的奈奎斯特带宽),ADC 4路同步输出,因此全局时钟为1/4的ADC频率,200MHz;PFB和FFT模块中设置大小为211=2048通道输出,之后连接实部虚部的分离模块和系数量化模块(图2),将FFT输出的无符号18bit按比特位选择其中的8bit(图3),并将输出合并为64bit的总数据链路[8]。
图2 FFT系数量化模块Fig.2 Module for quantifying FFT coefficients
图3 比特选择模块Fig.3 Module for bit-value selection
如果直接将64bit总数据链路输入到传输模块,则无法控制每个IP数据包中对应的频谱信息,因此引入数据流调整模块(Corner Turner),此模块的功能为顺序输入数据,按预存次序输出。将2048通道对应分配到16个IP中,每个IP接收对应的128个通道,具体的数据流信息如表1。通过数据流调整模块和IP数量的对应控制,可以实现对信号频谱的任意目标分配,非常灵活。
将排好序的数据传输到10Gb网络接口模块进行UDP封装与传输。10Gb传输端口的工作方式为64bit数据链路,200MHz全局时钟下,每隔一个周期传输一次数据包,最大封装值为1100×64bit。设计中使用2个10Gb传输端口交替工作,将tx_Valid设置为每32个时钟周期置高,并且在tx_Valid最后一个时钟周期tx_end_of_frame置高,从而完成一次UDP封装和传输。
对应的IP选择可以有两种方式。其一如图4所示为依次选择16个寄存器,需要在系统配置时在TinyShell配置目标IP地址;另一种方式可以选择用BRAM来存储目标地址,然后按照时钟依次选择目标地址。第二种方式在FPGA寄存器使用上比第一种降低2%[7]。
表1 数据流调整模块Table 1 Corner turner block module
图4 10GbE模块与比特选择模块Fig.4 Modules of 10GbE and bit-value selection
为了得到精确的时间标记,使用ARM和1PPS来设置和控制全局时钟,这部分模块提供了重置计数功能,精度为1个时钟周期。在数据记录端,为方便后续处理,嵌入了计数单位的UDP数据包给出精确数据时间标识。在硬件连接上,根据要求选择不同精度的时钟来同步系统,设计中使用NTP (网络时钟协议)来同步,精度为毫秒单位,通过触发reg_arm寄存器来同步IBOB。
1.3 数字频谱仪系统的软件配置
数字频谱仪系统的软件配置主要有两类:(1)滤波器数据设置;(2)链接设置。
这个设计的所有配置在基于Linux的片上系统—TinyShell下完成,TinyShell作为一个简单的telnet终端,在系统编译的过程中以C代码形式嵌入到IBOB的FPGA中。在滤波器数据设置中,需要设置同步脉冲(SyncPulse)的初始化周期, FFT位移,FFT输出系数,比特位选择。在链接设置中,需要设置10GbE接口,包括UDP端口,目的IP与MAC地址,IBOB的源IP和MAC地址[8]。
在计算机端,连接并设置好1Gb网卡与交换机后,开始接收和记录数据。接收软件可以使用GULP(一个将数据接受并存储的通用网络接口程序),在实验阶段使用基于python的网络接口程序来接收解包数据。
表2 设计总表Table 2 Design summary
2 性能测试和分析
为了验证设计方案的可行性, 对宽带数字频谱仪系统的性能进行实际测试。
2.1 测试结果
设计中为了减少FFT处理过程的频谱泄漏, 添加了窗函数对信号进行截断处理,使用基于汉宁窗的多相滤波器组实现。
图5所示分别为128阶的矩形窗、汉宁窗和海明窗的比较。汉宁窗的主瓣要比同阶的矩形窗宽,与海明窗相当,旁瓣最大泄漏为-42dB,矩形窗为-23db,汉宁窗为-52db。汉宁窗旁瓣随其阶数的增加以-5.5dB/个的速度衰减,为最快;海明窗与矩形窗则都以-1.5dB/个的速度下降。除此之外还测试了凯泽窗和布莱克曼窗,从各种窗函数的特性看,布莱克曼窗旁瓣的衰减最大,但计算最为复杂。海明窗的旁瓣衰减略比汉宁窗大,但是随旁瓣增加其衰减很慢。因此实际信号分析中常常选用汉宁窗,只要选择恰当的阶数,使用汉宁窗截断的时候,频谱泄漏可以更小,这样就可以有效改善FFT输出的频率响应,抑制频谱泄露。
加入多相滤波器组后的FFT输出旁瓣抑制达到近-70db较之FFT输出的-30db旁瓣[10],使得旁带干扰大大降低。
测试部分采用虚拟脉冲输入,在经过宽带数字频谱仪系统后,由计算机中记录原始数据。图6为原叠加信号在ADC量化后的数据值,图中显示为加入了窄带脉冲信号的白噪声能量谱。图7为宽带数字频谱仪系统后的数据值,使用Matlab对原始数据下采样后绘制频谱图。从图7中可以看出经过宽带数字频谱仪器后,频谱图出现了明显的窄带脉冲,其他为信号发生器的噪声,说明频谱仪工作良好。
图5 汉宁窗,海明窗,矩形窗函数响应比较Fig.5 Comparisons of the response functions of the Hann,Hamming,and Rectangular windows
图6 ADC采样序列Fig.6 A sampling sequence of the ADC
图7 宽带数字滤波器输出频谱图Fig.7 Output spectrum of the spectrometer
2.2 数字频谱仪器设备稳定性以及对后端系统的影响
作为接收机后端系统的前端设备,宽带滤波器主要工作是将信号做初步处理后传送到计算机集群、磁盘阵列等设备上,因此高速实时地处理宽带信号不仅是对滤波器设备的要求与挑战,也是对整个后端系统更高效更经济的要求。同时由于天文观测经常需要设备持续工作短至几分钟,长达几天,因此数字频谱仪器的抗干扰和稳定性也影响后端设备的运作。
出于实时性考虑,IBOB板载的FPGA最大可以运行在200MHz,可以实时处理单路带宽为1G(2Gsps采样率,8bit精度)的宽带信号,使用IBOB阵列则可以累加更大带宽。出于稳定性考虑,IBOB系统采用低噪供电系统与封闭式设计,有效避免了干扰,在试验阶段,连续运行系统24小时后,系统没有报错中断与重启动作,对系统做第二次性能测试,对照两次图谱显示误差率低于量化精度,因此该系统可以保证观测在一定时间内持续运行。
3 结 论
通过对基于IBOB的射电望远镜宽带数字频谱仪系统的分析和测试,达到了在实际应用中需要的设计要求; 对比验证了加窗后的FFT处理有效降低了通道间的频谱泄露,初步讨论和测试了数字频谱仪对后端系统的影响,稳定高速的实时宽带数字频谱仪系统可以提高整个数据接收系统的信号传输性能;最后对系统进行了上电测试,验证了设计方案的可行性和可靠性。要在射电望远镜系统中实际应用,还需要在现有初步研究的基础上进行更进一步的系统分析和测试,尤其是特殊环境的可靠性测试。
[1] Aaron Pavsons,Don Backer,Don werthimer,et al.A New Approach to Radio Astronomy Signal Processing[C]//General Assembly of the International Union of Radio Science,October 2005.
[2] C Chang, J Wawrzynek, R Brodersen.BEE2: A high-end reconfigurable computing system[J]. IEEE Design and Test of Comput,2005,22(2):114-125.
[3] Hayden kwok-Hoy So,Artem Tkachenko,Robert Brodersen.A Unified Hardware/Software Runtime Environment for FPGA-Based Reconfigurable Computers using BORPH[J]. ACM Transactions on Embedded Computing Systems, 2008,7(2): 567-570.
[4] 刘立勇,艾力·伊沙木丁,张晋.乌鲁木齐天文站建立脉冲星相干消色散观测系统[J].天文研究与技术-国家天文台台刊, 2007, 4(1):72-78.
[5] Parsons A,Backer D,Siemion A,et al.A Scalable Correlator Architecture Based on Modular FPGA Hardware and Data Packetization[J]. PASP , 120(873): 1207-1221.
[6] A Parsons,D Backer,C Chang,et.al.PetaOp/Second FPGA Signal Processing for SETI and Radio Astronomy[J]. Proc, 10th Asilomar Conference on Signals,Systems and Computers,Paci_c Grove, CA, November 2006.
[7] http://casper.berkeley.edu/wiki/index.php/Libraries
[8] P L McMahon. Adventures in Radio Astronomy Instrumentation and Signal Processing. M.D. Thesis, University of Cape Town. July 2008.
[9] http://casper.berkeley.edu/wiki/ADC2x1000-8
[10] http://seti.ssl.berkeley.edu/galfa/signalproc/pfb.html