基于FPGA的分段复用脉冲压缩实现方法
2019-03-19刘艳苹
刘艳苹
(中国船舶重工集团公司第七二三研究所,江苏 扬州 225101)
0 引 言
早在20世纪40年代,脉冲压缩的概念就已经被提出。由于技术发展的限制,直到60年代初,该项技术才得以应用。随着微电子技术的发展和理论的成熟,脉冲压缩已广泛应用于监视、火控、三坐标、相控阵等雷达。当对雷达最小作用距离要求不高时,脉冲压缩是在峰值功率受限制的情况下,保持窄脉冲优点的一种方法。当然,为了克服近距离检测能力弱的缺点,可在宽脉冲后发射一个不同载频的窄脉冲,弥补脉冲压缩这项缺点[1]。对宽、窄脉冲组合进行发射有2种情况:一种是在宽脉冲发射之后紧跟着发射窄脉冲,接收通道需具备2路,用于同时接收宽、窄脉冲的回波;另一种是在接收宽脉冲回波结束之后发射窄脉冲,只需一路接收通道,分时接收宽、窄脉冲的回波。
1 工作原理
距离接收窗内所有目标的回波被收集并使之通过一个匹配滤波器电路来进行脉冲压缩。这种模拟处理器的一种实现手段就是声表面波(SAW)器件。随着微电子技术的高速发展,数字相关处理器被应用于脉冲压缩的匹配滤波,其数字实现被称为快速卷积处理(FCP),在时域上采用有限冲激响应(FIR)滤波器实现,在频域上采用快速傅里叶变换(FFT)进行处理,所有处理均在基带上进行[2]。
1.1 分段处理
对长数据序列进行快速卷积处理时,以y(n)=x(n)*h(n)为例,当x(n)的数据长度远大于h(n)的数据长度时,快速卷积处理的优势就表现不出来,因此采用分段卷积的办法,将待处理的长信号x(n)分段,然后以适当的方式将每段输出组合起来。通常有2种分段方法:重叠相加法和重叠保留法。
(1) 重叠相加法
假设长信号x(n)分为每段长度为L且互不重叠的子序列,h(n)为M点序列,将每段序列xi(n)分别与h(n)进行卷积,得到yi(n),其相邻段间均有(M-1)个重叠部分,最后将各段重叠部分相加后组合输出。
(2) 重叠保留法
与重叠相加法不同,重叠保留法在对长数据序列分段时,每段序列至少保留(M-1)个重叠数据,第一段前端补(M-1)个零或最后一段后端补(M-1)个零,子序列分别与h(n)进行卷积,将每段前面(M-1)个或后面(M-1)个输出数据抛掉后组合输出[3]。
1.2 频域数字脉冲压缩
用数学公式描述快速卷积处理为:
y(n)=x(n)*h(n)
(1)
式中:x(n)为输入信号数据序列;h(n)为脉冲压缩匹配滤波器系数序列;符号“*”表示卷积运算;y(n)为脉冲压缩结果数据序列。
根据快速卷积定理,式(1)的频域表示方式为:
Y(k)=X(k)·H(k)
(2)
式中:X(k)为输入信号数据序列x(n)的频域表示;H(k)为脉冲压缩匹配滤波器系数序列h(n)的频域表示;符号“·”表示乘积运算;Y(k)为脉冲压缩结果数据序列y(n)的频域表示。
采用FFT进行快速卷积处理的工作原理,即频域数字脉冲压缩原理,如图1所示。
图1 频域数字脉冲压缩原理图
2 功能设计
对宽、窄脉冲分时接收,在一个重复周期内共用脉冲压缩处理模块完成大时宽调频信号和小时宽调频信号的脉冲压缩。
2.1 FFT点数的选取
在频域数字脉冲压缩处理中,FFT点数的选取主要依赖于以下几项原则:
(1) 距离接收窗长度t;
(2) 调频信号长度τ;
(3) 调频信号带宽B;
(4) 距离采样频率fs;
2.2 重叠点数的选取
在进行频域脉冲压缩之前,先对距离接收窗内的回波数据进行分段,分段形式有2种:一种是对宽脉冲距离接收窗和窄脉冲距离接收窗的分段,这2个窗内回波数据是完全独立的,只是匹配滤波器系数不同;另一种是宽脉冲距离接收窗内依据重叠保留法进行分段,分段时需考虑数据重叠,重叠的长度应大于调频或调相信号长度τ。
2.3 分段复用的频域脉冲压缩步骤
分段复用的频域脉冲压缩主要有4个组成部分:距离分段、大时宽调制信号脉冲压缩、小时宽调制信号脉冲压缩、距离拼接。
2.3.1 距离分段
将一个脉冲周期内的大时宽调频信号回波数据和小时宽调频信号回波数据存储在输入数据缓存器内。如图2所示,根据重叠保留法,将大时宽调频信号回波数据分S段,每段长度为K,重叠部分数据长度为P,最后一段数据长度不到K的部分补零。
2.3.2 大时宽调频信号脉冲压缩
根据重叠保留法,将大时宽调频信号回波数据分成S段后,序贯取出输入数据缓存器内的大时宽调频信号回波数据段,对该数据段做FFT,FFT结果与大时宽调频信号回波匹配系数相乘,对乘积做快速傅里叶逆变换(IFFT)得到大时宽调频信号该数据段的脉冲压缩结果。
图2 采用重叠保留法的距离分段示意图
(1) 对段内数据做K点FFT。
(2) 在脉冲压缩匹配滤波器的系数后面补零,使长度由N变为K,然后做K点FFT。
(3) 对段内数据的FFT结果和脉冲压缩匹配滤波器系数的FFT结果进行复数乘法。
(4) 对复数乘法的结果做K点的IFFT,得到该距离段脉冲压缩结果。
(5) 重复实施步骤(1)~(4),直到S个距离段的数据都实施了频域脉冲压缩过程。
2.3.3 小时宽调频信号脉冲压缩
取出输入数据缓存器内的小时宽调频信号回波数据,数据长度不到K的部分补零。对该数据段做FFT,FFT结果与小时宽调频信号回波匹配系数相乘,对乘积做IFFT,得到小时宽调频信号在该数据段的脉冲压缩结果。
2.3.4 距离拼接
如图3所示,根据重叠保留法,将S个距离段的脉冲压缩结果进行距离拼接,舍去第1段的前P个数据,舍去第2段的前P个数据,将第P+1至K的数据接在第1段数据后,后面依次类推,舍去后一段前P个数据,将后一段第P+1至K的数据接在前一段的后面,直至最后一段,完成大时宽调频信号脉冲压缩结果的距离拼接。
图3 大时宽调频信号脉冲压缩结果距离拼接
如图4所示,先取出缓存的小时宽调频信号回波数据脉冲压缩结果,再取出缓存的大时宽调频信号回波数据脉冲压缩结果,完成所有脉冲压缩结果的距离拼接。
图4 宽、窄调频信号脉冲压缩结果距离拼接
3 在FPGA上实现
在FPGA硬件平台上实现分段复用的脉冲压缩功能,将经过数字下变频处理得到的I、Q两路零中频信号,以数据流形式送给输入缓存模块pc_input,输入缓存模块的核心部件是数据存储器,模块采用乒乓读写方式访问数据存储器,按距离维数据流顺序将数据写入存储器,按分段方式读取相应段内数据。输入缓存模块pc_input与FFT模块接口信号有段起始信号sop、段终了信号eop、段使能信号valid,每段数据都有相应时序的sop、eop、valid信号与之对应,以流水方式分时送给FFT模块。FFT模块通过调用IP核生成,采用stream方式,FFT模块输出连接匹配系数相乘模块pc_coef_mult。匹配系数通过计算机软件计算得到,预先存储在存储器内。匹配系数相乘模块pc_coef_mult输出结果送给下一个IFFT模块,IP核生成的FFT模块同时具备IFFT功能,通过一个功能选择信号控制。经过IFFT变换后的数据已完成脉冲压缩功能,送给输出缓存模块pc_output,完成数据段拼接和宽、窄信号的距离拼接。脉冲压缩在FPGA上的功能流程图如图5所示。
4 仿真及验证
图5 脉冲压缩在FPGA上的功能流程图
模拟线性调频信号的时宽为20 μs,带宽为10 MHz,信号接收窗长540 μs,采样频率为10 MHz,则数据长度为5 400,线性调频信号长度为200,模拟信号如图6所示,调频信号数据起始位置为2 000。
图6 模拟信号波形图
不分段处理的脉冲压缩算法采用8 192点FFT进行处理,而依据上述的分段复用方法,可采用256点、512点、1 024点、2 048点或4 096点FFT中任一种小于8 192点FFT的点数进行脉冲压缩处理。本文以2 048点FFT的脉冲压缩处理为例进行仿真,将5 400个数据按图5分成3段,每段数据长度为2 048,重叠长度为248,最后一段数据补充248个零,3段分别经过脉冲压缩的结果图如图7所示,3幅图依次对应第1段数据脉冲压缩结果、第2段数据脉冲压缩结果及第3段数据脉冲压缩结果。
图7 分段数据的脉冲压缩结果图
按照重叠保留法拼接后的脉冲压缩结果与不分段进行脉冲压缩所得结果进行比较,如图8所示。经过对比可知,按照重叠保留法进行分段复用脉冲压缩处理的结果与不分段进行脉冲压缩所得结果一致,因此可以替代原实现方法,以便于在FPGA内实现。
图8 按照重叠保留法拼接后脉冲压缩结果与 不分段脉冲压缩结果对比图
5 结束语
本文设计的分段复用脉冲压缩,采用重叠保留法对长序列数据进行分段,利用FPGA的流水工作方式,分时复用脉冲压缩处理模块,通过设置分段参数和匹配系数,以较低的资源消耗实现了不同时宽调频信号的脉冲压缩处理,可在不同的信号处理系统中予以应用。