用高速DSP在频域上实现LFM信号的实时脉冲压缩

发布者:theta18最新更新时间:2007-03-09 手机看文章 扫描二维码
随时随地手机看文章
摘要:时宽带宽(TB)积较小的线性调频(LFM)信号的脉冲压缩可用A100等器件构成的横向滤波器实现;对于TB积较大的LFM信号,在时域上对其进行脉冲压缩所需的计算量和硬件量太大。本文介绍用TMS320C6201 DSP在频域上实现大TB积LFM信号的实时脉冲压缩,内容包括海明加权、循环卷积、长数据分段迭加、软件流程图和硬件框图。实验结果表明,当雷达重要周期为300Hz时,对TB积为320的LFM信号进行脉冲压缩后最大副瓣电平为-42.3分贝。 关键词:LFM 脉冲压缩 信号处理器 实时信号处理 匹配滤波 为提高脉冲雷达或脉冲声纳的作用距离,通常有两个途径,其一是增加发射机峰值功率;其二是加大发射脉冲的宽度来提高平均发射功率。发射机的发射功率峰值受电源、功率放大器、功率传输通道(功率过大,波导等器件易打火)等限制;简单增加发射脉冲的宽度,相当于降低发射信号的带宽。为使相同时宽的脉冲增加带宽, 可对发射脉冲内的载波进行线性调频;在接收端对线性调频的回波信号再进行脉冲压缩处理。经脉冲压缩后信号所具有的大的带宽能够提高测距精度和距离分辨力。宽脉冲内大的时宽能够提高测速精度和速度分辨力。因此脉冲压缩技术广泛用于雷达、声纳等系统,其中以线性调频信号的应用最为广泛。 1 线性调频信号的脉冲压缩 线性调频(LFM)信号是一种瞬时频率随时间呈线性变化的信号。零中频线调频信号u(t)可表示为: u(t)=exp(jπBt2/T) -T/2 雷达中频信号经抗混迭滤波后,将其频带限制在一定的范围内。再经A/D变换后便得到中频直接采样的数据。双口RAM用于存放中频直接采样的原始数据。 TMS320C6201用于完成LFM信号的实时脉冲压缩处理,包括FFT变换、中频信号正交化、移频、脉压、IFFT等工作。 SDRAM为高速动态存储器,用于存放LFM信号脉冲压缩处理过程中的中间数据。 处理后的数据及处理过程中的数据均可送至PC机作保存、显示等相关处理。 2.3 工作流程 LFM信号的脉冲压缩的工作流程如图2所示。 在相参雷达、声纳和某些通信系统中,通常需要提取带限信号的同相分量(I)和正产分量(Q)。传统的方法是在同相支路和正交支路中把带限信号混频到基带(零中频),然后用与信号带宽相应的频率进行采样,以获得基带上的同相分量和正交分量。这种传统的正交采样方法存在的最大问题是I、Q两个支路总存在一定的增益不平衡和相位误差。 为了克服I、Q支路的幅相不平衡,本文采用中频直接采样的方法,即只用一个支路和一个A/D变换器。中频直接采样的数据通过适当的处理就可获得零中频上的正交信号数据。 FFT变换将中频直接采样的数据从时域变换到频域。 正交化的过程是从中频数据获得两路正交信号数据的过程,亦即从中频信号频谱获取正交信号频谱的过程。当采样频率fs、载频f0和信号带宽B之间满足f0=(2M-1) %26;#183;fs/4关系(一般M=1,fs>2B)时,中频信号频谱的正频率部分跟相应正交信号频谱是完全吻合的。 为了获得零中频上的正交信号频谱,必须将中频上的正交信号频谱沿频轴移动一个载频数量的大小,即移频。 用于脉冲压缩的匹配滤波器的时域值及基频谱在整个工作过程中是不变的。零中频正交信号的数据经脉冲压缩后,再做IFFT得到最终的脉冲压缩时域数据。 2.4 软件计算及其优化 在整个工作流程中,FFT及IFFT运算占用的比例很大,因此在LFM信号的实时脉冲压缩过程中,FFT程序的优化至关重要。 FFT运算采用基2时域抽取算法。在FFT的循环过程中,需要计算旋转算子 。这是一个三角浮点运算,用C6201运算速度慢,很难达到实时处理的要求。所以在FFT运算之前把旋转算子计算好,放在数据存储器中加以调用。而且旋转算子的调用很有规律,寻址比较方便,所以不需花费很大的计算量。这样大大提高了FFT的运算速度。 N点FFT运算需要1/2(N%26;#183;log2N)复数乘法。乘法花费指令周期较多,因此复数乘法的优化比较重要。在FFT程序中,主要采用了以下优化措施: (1)采用short数据类型 FFT中的数据类型为short,字长16位。模拟信号经A/D变换后长度为12位,与16位比较接近,这样能够很好的节省内存资源。由于TMS320C6201为定点型芯片,用它来计算整数类型的代数和运算,能够发挥其最大的运算优势。而且,C6000系列的指令集内只有16位乘法指令,这样采用16位字长,能够节省乘法运算的指令周期数。 (2)使用字访问short类型 在复数乘法中,读、写内存比较频繁。读操作花费指令周期较多(需5个指令周期)。如果以short类型(字长16位)读、写内存,将要读内存6次,写内存4次。由于C6000指令集内的读写操作的数据可以是32位。所以可以采用int类型(字长32位)读、写内存,即每访问一次内存,操作数为两个Short数据。这样只需读内存3次,写内存2次,花费时间可以减少一半。 (3)使用内联函数 C6000编译器提供了大量的内联函数。如16位乘法算:_mpy(),_mpyh(),_mpyh1(),_mpylh()等。内联函数可快速优化C代码,在程序中应尽量使用。 2.5 长数据分段迭加 当一个雷达重复周期内采样的数据长度很大而相应匹配滤波器的数据很短时,可采用长数据分段迭加来减小运算量。即将信号长数据分散成若干个小段(每小段数据长度都与匹配滤波器数据长度相当),对每小段数据分别作FFT处理后再相加。实验结果表明:当信号数据长度越大时,采用此种方法相对于通常补零FFT方法的优越性越大,可以满足LFM信号实时脉冲压缩的要求。 通用DSP技术的不断发展,给实时雷达信号处理系统的实现带来了极大的方便。本文阐述了LFM信号实时脉冲压缩为雷达实时信号处理的一个实例,对于雷达声或纳等设备的实时信号处理具有一定的参考价值。
引用地址:用高速DSP在频域上实现LFM信号的实时脉冲压缩

上一篇:基于DSP的USB口数据采集分析系统
下一篇:TMS320F241在混合动力汽车电机控制中的应用

小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved