O 引言
脉冲压缩体制在现代雷达中被广泛采用,通过发射宽脉冲来提高发射的平均功率,保证足够的作用距离;接收时则采用相应的脉冲压缩算法获得脉宽较窄的脉冲,以提高距离分辨力,从而能够很好地解决作用距离和距离分辨力之间的矛盾问题。
线性调频(LFM)信号通过在宽脉冲内附加载波线性调制以扩展信号带宽,从而获得较大的压缩比。所需匹配滤波器对回波信号的多普勒频移不敏感,因此LMF信号在日前许多雷达系统中仍在广泛使用。
本文基于快速傅里叶IP核可复用和重配置的特点,实现一种频域的FPGA数字脉压处理器,能够完成正交输入的可变点LFM信号脉冲压缩,具有设计灵活,调试方便,可扩展性强的特点。
1 系统功能硬件实现方法
该系统为某宽带雷达系统的数据采集和数字脉冲压缩部分。系统要求在1个脉冲重复周期(PRT)内完成距离通道的数据采集及1 024点的数字脉冲压缩,并在当前PRT将脉压结果传送至DSP,其硬件结构如图1所示。
数据采集系统主要包括前端的运算放大器和模/数转换器。运算放大器选用ADI公司的AD8138,将输入信号由单端转换为差分形式以满足ADC的输入需求,并且消除共模噪声的影响。模/数转换器选用TI公司的ADS5500,具有14 b的分辨率和125 MSPS的最高采样率,用来对输入LFM信号进行60 MHz的高速采样。
数字脉冲压缩模块在FPGA中实现,FPGA选用Xilinx公司的XQ2V1000芯片。在对输入采样数据进行脉冲压缩后,结果存储于FPGA片内的双口RAM中,并向DSP发送中断信号。DSP在接收到中断信号后读取RAM中的脉压数据进行主处理。
2 脉冲压缩模块的设计和实现
2.1 脉冲压缩原理
数字脉冲压缩技术是匹配滤波和相关接收理论的实际应用,频域的匹配滤波等效于时域的相关接收。基于匹配滤波理论实现数字脉冲压缩的原理如图2所示。
图2中θ(f)为发射信号的非线性相位谱,接收的回波信号在经过匹配滤波后,非线性相位谱得到校正。输出的窄脉冲为:
匹配滤波器有一个重要的特性:对波形相同而幅度和时延不同的信号具有适应性。也就是说,与信号s(t)匹配的滤波器,对信号as(t-τ)也是匹配的。回波信号s(t)在波门中的位置反映在脉压结果峰值出现的位置,这也是利用雷达脉冲进行测距的主要依据。
2.2 脉冲压缩原理
脉冲压缩模块包括FFT、与IFFT单元、复数乘法单元以及存储单元,其结构框图如图3所示。其中,FFT和IFFT单元是通过复用Xilinx公司提供的快速傅里叶变换IP核来实现的,而硬件乘法器则为复乘提供了解决途径。
采样数据首先存入FIFO中进行全局缓存,然后FFT单元从FIFO中读取采样数据,紧接着进行FFT运算,结果在流水输出时直接与匹配滤波器系数相乘,并将运算结果写入块RAMl中,最后IFFT单元从块RAMl中读取复乘后的数据进行IFFT(复用FFT运算IP核)运算,结果写入块RAMl后发送中断信号,等待DSP读取。
2.2.1 FFT处理单元的硬件复用
在系统中FFT处理单元通过使用软核Fast Fourier Transform v3.O来实现的。该IP核提供3种结构选择。
(1)管线级,数据流水I/0。这种结构将若干基-2蝶形单元级联起来,使得数据的输入、计算、输出可以流水进行,从而可以达到很高的处理速度,但资源消耗较大;
(2)基-2,最少资源消耗。这种结构采用单个基-2蝶形单元对输入数据进行变换,运算消耗的时间较长;
(3)基-4,突发I/O;这种结构采用单个基-4蝶形单元对输入数据进行变换,并利用块RAM来存储旋转因子,占用系统资源较少,在1个PRT内可以完成脉压结果的输出,从而在资源和速度这两者之间达到很好的平衡,也是设计中实际采用的结构。
FFT处理单元主要包括2个过程:数据I/O和运算过程,但两者不是流水执行的。FFT启动信号有效后,数据开始进行装载,装载完成后开始进行FFT运算;等待运算结束后,结果才可以输出。在运算过程中,不发生数据的装载或输出。
在数字设计中,FFT和IFFT处理单元时可以采用相同的结构来实现的。具体的方法是:在做IFFT运算前,先交换输入数据的实部和虚部,然后送入FFT处理单元按照FFT的结构进行运算,并交换FFT运算结果的实部和虚部,最后除以运算点数N,就可以得到IFFT的运算结果。
该IP核基于上面的方法同时具有进行IFFT运算的功能,通过实时配置端口FWD INV上的电平可以实现复用,分别完成FFT和IFFT运算。在FPGA设计中,利用结构复用减少逻辑单元块,不仅可以节约系统资源,而且能够减少结构间的硬连线及传输线时延,有利于提高系统的工作频率。
2.2.2 脉冲压缩模块的时序设计
由于FFT和IFFT的逻辑运算功能已经在IP核中实现,因此时序设计便显得尤为重要。在FFT(或IFFT)运算单元中,主要的状态与时序控制信号及其功能描述如表1所示。
在采样距离门有效期间,将样本数据写入FIFO中进行缓存。采样结束后,通过FFT单元的写使能信号(NFFT_WE和FWD_INV_WE)将NFFT=010 10及FWD_INV_WE=1写入状态控制寄存器设定工作模式,接着启动START信号进行FFT运算,写使能信号与sTART之间仅差1个时钟周期。运算结束后,DONE信号有效1个时钟周期,输出使能信号UNLOAD与DONE同步,经过7个时钟周期后数据有效信号DV开始有效,FFT运算结果开始流水输出,同时与匹配滤波器的系数相乘,并存入RAM中。由于乘法运算的固有延迟,写使能RAM_EN延迟DV信号2个时钟周期。存储结束时,IFFT单元的写使能信号同时有效,并设定NFFT=01010及FWD_INV_WE=0,接着启动START信号进行IFFT运算。运算结束后,DONE信号(与UNLOAD同步)再次有效,IFFT运算输出结果在DV信号有效期间直接写入RAM中。单个PRT内各控制信号的具体时序说明如图4所示。
2.2.3 块浮点数据格式
在数字信号处理系统中,数据表示格式可分为定点制、浮点制和块浮点制,它们在实现时对系统资源的要求不同,工作速度也不同,有着不同的适用范围。定点表示法使用最多,简单且速度快,但动态范围有限,需要用合适的溢出控制规则(如定比例法)适当压缩输入信号的动态范围,但这样会降低输出信号的信噪比。浮点表示法的优点是动态范围大,可避免溢出,能在很大的动态范围内达到很高的信噪比,主要缺点是系统实现复杂,硬件需求量大,成本和功耗高,而且速度较慢。
块浮点表示法兼有定点法和浮点法的某些优点,是以上2种表示法的结合。这种表示法首先对一组数据进行检测,归一化最大数的小数部分,再建立适当的指数。接着把剩下数据的小数部分转化为合适的数,使它们可以使用最大数的指数。块浮点算法的主要优点是:大动态范围、低截断(或舍入)噪声,是一种有效的数据表示形式。从芯片实现角度上看,块浮点表示法能够保证较高的信号处理质量,尤其适用于FFT运算的场合。脉压模块中的FFT核带有块浮点运算的功能,整个运算过程中的数据格式表示如图5所示。
ADC输入数据为14 b的二进制补码形式,对其低位补零扩展为16 b(IP核要求的输入精度)后送入FFT运算单元,输出结果为16 b的定点数以及指数EXP1。复乘包括乘法和累加运算,即FFT结果与匹配系数进行16 b×16 b的乘法运算,所得结果再进行加法运算;在进行加法运算前,所有数据扩展为33 b以防止溢出的发生,最终数据截取高16 b送入IFFT处理单元,输出为16 b的定点数和指数EXP2,将其与EXPl相加后
得到指数EXP。脉压的最终结果即为IFFT后的16 b定点数以及指数EXP,两者分别存储在FPGA片内RAM中。
2.3 脉冲压缩模块的测试
设输入理想LFM信号参数如下:带宽B=40 MHz;时宽T=6μs;系统样本速率为60 MHz;使用海明窗加权。在上述条件下,脉冲压缩系统的输出结果对数图如图6所示。
在图6中,横轴代表距离采样单元,即系统最小距离分辨率。通过系统实际处理结果与Madab仿真结果的对比验证了设计的正确性和实用性。
3 结语
系统采用ADS5500完成14位、60 MSPS的数据采集,并在FPGA中实现1 024点的数字脉冲压缩。设计采用并行流水方式提高工作速度,而块浮点算法则充分保证运算的精度。IP核的复用大大降低硬件规模,从而使整个系统具有高速度、高精度和低功耗的特点。
本视频基于Xilinx公司的Artix-7FPGA器件以及各种丰富的入门和进阶外设,提供了一些典型的工程实例,帮助读者从FPGA基础知识、逻辑设计概念
本课程为“从零开始大战FPGA”系列课程的基础篇。课程通俗易懂、逻辑性强、示例丰富,课程中尤其强调在设计过程中对“时序”和“逻辑”的把控,以及硬件描述语言与硬件电路相对应的“
课程中首先会给大家讲解在企业中一般数字电路从算法到流片这整个过程中会涉及到哪些流程,都分别使用什么工具,以及其中每个流程都分别做了
@2003-2020 中国电子顶级开发网