基于FPGA与DSP的雷达高速数据采集系统

2010-03-26 07:32梅坤胡姝玲刘宏海
电子设计工程 2010年12期
关键词:高速数据时序中断

梅坤,胡姝玲,刘宏海

(北京航空航天大学北京100191)

随着雷达数据处理技术的快速发展,需要高速采集雷达回波信号。然而激光雷达的发射波及回波信号经光电器件转换后,形成的电信号脉宽窄,幅度低,而且背景噪声大,如采用低速的数据采集系统进行采集,存在数据精度不高等问题。同时,为避免数据传输不及时,发生数据丢失,影响系统的可靠性和实时性,需设计开发高速数据采集系统[1]。

设计中针对前端输出约-25~25 mV,带宽为20 MHz的信号,采用高带宽,低噪声,高数据传输率,高分辨率数模转换芯片AD9235;利用XC2V250内部的大小为6 KB的异步FIFO实现AD9235转换器与TMS320C6201间的高速数据传输。采集系统的采样率为30 MHz,分辨率为12位,内部异步缓存FIFO[2]为6 KB,满足高速数据采集要求。

1 系统设计

如果A/D直接与DSP的外部存储接口EMIF连接,会使DSP的负荷过重,另一方面DSP还需扩展外设,与采样输入共用一条外部总线,进行外部设备的读写,不允许数据采集始终占用外部总线。如果不能及时接收数据,上次存储的数据会被覆盖,造成数据丢失。异步FIFO能实现不同时钟域的数据传输,可将它作为A/D转换器和EMIF之间的桥梁,每写入一块数据,便通知EMIF从FIFO取走数据[3]。基于以上分析,图1为高速数据采集系统结构框图。

FPGA内部DCM为A/D转换器和DSP提供采样时钟和外部振荡源,A/D转换器与DSP工作在不同时钟,在FPGA内部生成一个异步FIFO作为数据传输缓存。A/D转换器把采样值写入FIFO,FIFO写使能WR_EN一直有效,系统上电后,A/D转换器一直处于工作状态,每写入一块数据便向DSP发出中断信号,在中断中读取FIFO中的数据。FIFO输入数据宽度12位,输出数据宽度为24位[4],FIFO读时钟高于写时钟,DSP读取数据比A/D向FIFO写数据快,而且DSP内部数据处理时间较快,可保证系统高速实时采集。

图1 高速数据采集系统结构Fig.1 Structure of the high-speed data acquisition system

2 A/D转换电路

A/D转换电路是整个系统的重要组成部分。对前端输出约-25~25 mV,带宽为20 MHz的射频信号数字化,设计采用模数转换器芯片AD9235[5],最大采样率40 Mb/s,12 bit数据输出,信噪比RSN=70 dB。AD9235是差分输入,单端信号输入需要A/D驱动芯片,选用低失真差分A/D驱动芯片AD8138,图2为A/D转换电路,AD9235模拟输入设置在2VPP,参考电压VREF采用内部1 V参考电压,同时还作为驱动芯片AD8138的共模电压。利用AD8138对输入信号进行放大,放大倍数RF/RG=2.49 kΩ/820 Ω≈3。因此,经过AD8138单端差分转换及放大输入信号范围为25~175 mV。

图2 A/D转换电路Fig.2 Circuit of A/D converter

3 FPGA接口设计

3.1 时钟设计

采用30 MHz外部晶振作为整个系统的时钟源,利用XCV250内部的时钟管理器DCM,分别为AD9235、异步FIFO、TMS320C6201提供时钟源。DCM输出CLK0的30 MHz时钟作为AD9235采样时钟和异步FIFO的写周期WR_CLK。

利用DCM数字频率合成器[6]输出CLKFX作为TMS32-0C6201的时钟源。公式:DCM输出CLKFX的频率=输入时钟CLKIN的频率×(M/D),取M/D=5/3。这样DCM为TMS320C6201提供50 MHz时钟,经过4倍频,DSP系统时钟为200 MHz,外部存储EMIF时钟CLKOUT1为200 MHz。设置CE0空间控制寄存器的参数,使FIFO读时序SETUP、HOLD等于一个CLKOUT1周期,STROPE等于两个CLKOUT1周期,读时序如图3所示,读第一个数时,EMIF会自动维护最小2个时钟周期的建立时间,后续数据读取,建立时间为1个时钟周期。FIFO读时钟周期约为50 MHz,比A/D向FIFO写数据时间快,保证系统实时采集。

图3 EMIF读FIFO数据时序Fig.3 Timing diagram of reading FIFO

3.2 异步FIFO接口时序

AD9235与FPGA接口设计应仔细考虑ADC转换时钟、FIFO写时钟及所选中间逻辑器件的时序和延时特性,以保证正确地设置采样时钟。AD9235的采样数据在延时7个采样周期后出现在数据线上,图4为A/D与FIFO接口时序。

图4 AD9235与FIFO接口时序Fig.4 Timing diagram between AD9235 and FIFO

读FIFO操作[7],利用EMIF外部存储器的控制信号,包含有:输出使能位AOE和读使能ARE以及外部空间片选信号CE0。读写时序如图3,输出使能AOE和外部空间片选信号CE0低时,异步FIFO读使能RD_EN有效,当读使能位ARE为低时,待读出的数据进行初始化,随后ARE会跳变为高电平,异步RD_CLK端产生上升沿,此时异步FIFO中数据被读出。图1中的HALF_FULL位直接与TMS320C6201外部存储区域中断EXT-INT5触发连接,当FIFO缓存达到半满时,上升沿触发DSP外部中断,DSP启动DMA(直接数据存储)以突发方式读取FIFO数据,在时钟CLOCKOUT1下读取FIFO存储数据。EMIF与FIFO的读逻辑关系为RD_CLK=!ARE;RD_EN=!(CEO+AOE)。

图5为异步FIFO仿真图,输入数据宽度12位,输出数据宽度为24位。读时钟为50置MHz,写时钟为30 MHz。

图5 FIFO读写时序仿真Fig.5 Timing simulations of reading and writing FIFO

4 设计应注意问题

若用异步FIFO中的FULL信号作为中断源,满信号位FULL有效,触发DMA开始传输,在满信号和DMA传输之间,A/D采集时钟仍然驱动A/D转换器,会覆盖之前存储的采集数据,造成数据丢失;若采用HALF-FULL信号作信号标志位,半满时候,开始DMA传输,不用中断数据采集,由于A/D写入速度低于EMIF读出速度,也不会造成数据覆盖。

FPGA内部的异步FIFO数据总线与TMS320C6201的数据总线相连,应注意数据采集与TMS320C6201访问外设间的总线冲突[8-9]。应保证没有长时间占用数据总线的外部设备,否则造成采集数据丢失。

5 结论

针对雷达的回波信号,设计基于FPGA与DSP的高速数据采集系统,介绍了雷达前端信号A/D外围转换电路,利用DCM和异步FIFO实现ADC与高速DSP间的数据缓冲,以保证采集数据的有效传输。系统采样率为30 MHz,采样精度为12位,异步存储缓冲FIFO大小为6 kbits,能较好地满足高速采集要求。FIFO与DSP采用24位数据接口,读取FIFO采用DMA数据传输,较充分利用DSP资源,提高了系统实时处理的能力。

[1]周委,陈思平,赵文龙,等.基于DSP EMIF口及FPGA设计并实现多DSP嵌入式系统[J].电子应用技术,2008,34(6):39-42.

ZHOU Wei,CHEN Si-Ping,ZHAO Wen-long,et al.Design and implementation of multi DSP embedded system based on the DSP EMIF port and FPGA[J].Application of Electronic Technique,2008,34(6):39-42.

[2]王宏臣,林咏海.基于FPGA的异步FIFO硬件实现[J].电子与封装,2006,6(12):34-36.

WANG Hong-chen,LIN Yong-hai.Asynchronous FIFO hardware design based on FPGA[J].Electronics&Packaging,2006,6(12):34-36.

[3]周刚,吴杰.基于TMS320C6201的高速数据采集模块设计[J].仪表技术与传感器,2008(4):69-70.

ZHOU Gang,WU Jie.Design of high-speed data acquisition module based on TMS-320C6201[J].Instrument Technique and Sensor,2008(4):69-70.

[4]徐向飞.基于VHDL的FIFO存储器的设计[J].南京工业职业技术学院学报,2007,7(4):48-50,52.

XU Xiang-fei.The design of FIFO memory based on VHDL[J].Journal of Nanjing Institute of Industry Technology,2007,7(4):48-50,52.

[5]Analog Devices Inc.AD9235 Datasheet[EB/OL].(2004)[2010].http://www.analog.com/.

[6]宋克柱.基于FPGA的数字时钟设计[J].核电子学与探测技术,2008,28(5):982-986.

SONG Ke-zhu.FPGA-based digital clock design[J].Nuclear Electronics&Detection T-echnology,2008,28(5):982-986.

[7]王成,薛小刚,钟信潮,等.FPGA/CPLD设计工具Xilinx ISE使用详解[M].北京:人民邮电出版社,2005.

[8]皮代军,张海勇,叶显阳,等.基于FPGA的高速实时数据采集系统设计[J].现代电子技术,2009,32(6):12-14.

PI Dai-jun,ZHANG Hai-yong,YE Xian-yang,et al.Design of high speed real-time data acquisition system based on FPGA[J].Modern Electronics Technique,2009,32(6):12-14.

[9]刘振波,熊庆国,唐明涛.FPGA和EZUSBFX2在采集图像数据中的应用[J].现代电子技术,2009,32(8):31-32.

LIU Zhen-bo,XIONG Qing-guo,TANG Ming-tao.Application of FPGA and EZUSB FX2 in image data acquisition[J].Modern Electronics Technique,2009,32(8):31-32.

猜你喜欢
高速数据时序中断
清明
基于不同建设时序的地铁互联互通方案分析
基于AD9250的高速数据接口设计
基于FPGA 的时序信号光纤传输系统
跟踪导练(二)(5)
千里移防,卫勤保障不中断
一种毫米波放大器时序直流电源的设计
PCI-e高速数据采集卡的驱动与上位机软件设计
基于AD7891的浮空器高速数据采集系统设计
超短波高速传输设备的设计