基于DSP的MUSIC算法的实现
- 格式:docx
- 大小:41.50 KB
- 文档页数:8
基于DSP的MUSIC算法的实现
董照飞
【摘 要】简述了基于TI公司高性能浮点DSP(TMS320C6713)的测向系统的设计情况,重点叙述了系统的核心部分--测向单元的设计方案与结构,并对DOA估计的经典方法--MUSIC算法进行了介绍,在实现过程中,采取了一些有效的措施减少了计算量,并提出实际应用中的一种简单实用的谱峰搜索方法.
【期刊名称】《现代电子技术》
【年(卷),期】2006(029)023
【总页数】3页(P21-23)
【关键词】DSP;波达方向;MUSIC算法;谱峰搜索
【作 者】董照飞
【作者单位】解放军94669部队,安徽,芜湖,241007
【正文语种】中 文
【中图分类】TN973.4
1 引 言
采用抗干扰、低截获概率体制的通信信号是今后战略、战术通信的必然趋势,因此抗干扰、抗多径、抗衰落以及抗多普勒频移成为设计定向方法的主要依据。而以往传统的测向方法由于其体制原因无法完成以上要求。超分辨率的MUSIC测向算法具有测向准确度、灵敏度高的特点且具有潜在分辨多信号甚至相关信号的能力,对实现这些应用具有重要的意义。
针对我军未来航空数据链中的超短波跳频通信体制研制相应的高分辨率定向设备。该设备不仅要能够实现对常规地空电台信号的测向,而且还要能够对新型宽带抗干扰电台中的高速跳频信号进行快速测向。根据未来航空数据链端机电台采用的信号体制,采用FPGA,DSP与CPU结合的设计思想来实现中频全数字式的新型定向机方案。
2 定向系统的一种设计方案
本系统主要由2大部分组成:一是新型数据链端机电台部分;二是定向部分,也是该系统的核心部分。数据链端机电台除了进行正常的话音/数据通信外,还需向定向部分提供同步信号,保证定向部分的多通道接收机和电台同步工作。其中定向部分包括5个单元:5元天线阵、5通道接收机、数字中频处理及DOA提取、显示控制以及端机电台波束形成(BF)。定向部分在电台辅助同步的前提下,对多通道接收机进来的信号进行一系列数字处理,提取出信号的DOA信息,完成定向。另外,测向部分还具备对整个系统的控制显示功能以及对端机电台采用多天线通信时的波束形成功能。整个系统的主要硬件配置如图1所示。
图1 系统的主要硬件配置图
测向部分的5通道接收机部分(一直到零中频数字信号输出)采用某厂端机电台的前端通道,这里就不做过多描述。而测向部分的核心算法(图1中阴影框所示)主要用FPGA,DSP和嵌入式CPU来实现。其工作过程为:数据链端机电台和空中机载电台取得同步,向测向部分的五通道接收机提供同步后的本振信号和时钟信号,从而保证五通道接收机最终输出的是5通道10路零中频的有用数字信号(图1中5个AD后的5路并行FPGA输出);当有测向需求时,CPU 向DSP发出测向指令,DSP对该指令进行解析,解析正确后控制五路FPGA将数据打到一个专用FPGA(图1中阴影表示的那个)中;该FPGA对接收到的数据进行存贮和预处理,生成一个10×10(数据的实部与虚部按照一定的规律排列)的协方差矩阵,准备完成后向DSP发出准备完毕信号;DSP收到该信号后,从FPGA中将该矩阵读取到自己的存贮空间中,进行改进型MUSIC算法的运算,提取出信号的DOA信息,然后将该信息缓存并向CPU发出计算完毕指令;CPU收到DSP发来的计算完毕指令后,从DSP的缓存中读取DOA数据,经过一系列变换和处理后,以数据或图形方式显示出信号的方位信息,从而完成测向。当看到有多个不同方向来的信号(可看成干扰)影响到通信质量时,可以通过CPU发出端机电台启用波束形成工作的指令。此时,CPU从DSP中读取协方差矩阵以及各个信号对应的导引向量,通过计算得到天线各阵元的加权系数,并对各个天线阵元进行加权,控制每个阵元信号的幅度和相位,使天线的方向图在期望方向上形成波束,在干扰方向上形成零陷,同时控制电台端机将天线切换到多天线工作模式,以实现改善接收质量、抑制干扰的目的。
2.1 天线及通道接收机单元
该系统采用建立在波达方向的估计和波束形成基础上的智能天线[1],此举可抑制干扰信号、改善感兴趣信号的信噪比,降低数字通信的误码率,使通信质量得到很大改善。
每一个天线阵元对应一个通道接收机,将该阵元接收下来的信号进行变频、滤波、放大等处理,生成固定频率的模拟中频信号。然后对该中频信号进行AD采样、直接数字下变频(DDS)、数字滤波等处理,变成数字零中频信号,送给后面的数据处理与DOA估计单元。
2.2 数据处理与DOA估计单元
数据处理与DOA估计单元主要包括数字零中频信号存贮与预处理模块与DOA计算和处理模块。在信号存贮与预处理模块形成协方差矩阵,并根据特定的应用场合对其进行优化处理;DOA计算和处理模块从上一模块中读取数据协方差矩阵,然后采用空间谱DOA估计算法对协方差矩阵进行奇异值分解(SVD)、信号和噪声子空间构造、谱峰搜索等处理,得到多个信号的DOA值和相应的导引向量。
2.3 显示与控制单元
显示与控制单元包括2个模块:一是方位显示/控制模块,二是感兴趣信号(SOI)权值计算/控制模块。主要完成DOA信息显示处理、显示控制、数据传输控制以及计算SOI权值,同时产生控制信号等功能。
2.4 波束形成单元
波束形成单元主要包括SOI权值加载/DBF模块,主要是在显示控制单元的控制下,读取SOI的权值,在SOI方向上形成强波束,改善电台通信质量。
系统除以上的几个模块外,还包括电源模块以及结构模块等,在这里就不做介绍了。
3 MUSIC算法实现方法及流程
测向部分真正重点设计的部分集中在5通道接收机零中频数字信号输出之后,即在5路DDC之后开始进行设计,下面主要介绍MUSIC测向算法及工作流程。
设空间D个互不相关的信号从不同的方位角θ1,θ2,…,θD入射到一个M(我们的系统设计是M=5,下同)元均匀圆阵,以水平正东方向为方位0°,各阵元噪声ni(t)互不相关,i=1,2,…,M为空间白噪声,方差为σ2,噪声与信号互不相关。在这些假定下,阵列的输出为:
X(t)=AS(t)+N(t)
(1)
其中X(t)为阵列输出矢量,S(t)为信号矢量,N(t)为噪声矢量,A为阵列方向矩阵。
X(t)=[x1(t),x2(t),…,xM(t)]T
(2)
S(t)=[s1(t),s2(t),…,sD(t)]T
(3) N(t)=[n1(t),n2(t),…,nM(t)]T
(4)
A=[a(θ1),a(θ2),…,a(θD)]
(5)
其中,上标“T”表示转置运算,a(θk)为一个M×1维的方向向量,k=1,2,…,D。
(6)
求出阵列输出矢量X(t)的相关矩阵RX:
RX =E[X(t)XH(t)]=AE[S(t)SH(t)]AH+σ2I
=ARuuAH+σ2I
(7)
其中,上标“H”表示复共轭转置运算,E[]为数学期望运算。
对RX进行特征分解后,将其特征值按降序排列并相应地调整特征向量后有:
λ1≥λ2≥…≥λD>λD+1=λD+2=…=λM
v1,v2,…,vD vD+1,vD+2,…,vM
(8)
以各个最小特征值所对应的特征向量vD+1,vD+2,…,vM为列构造一个M×(M-D)维的矩阵:
EN=[vD+1,vD+2,…,vM]
构造空间谱函数:并进行谱峰搜索。
Pmusic(θ)的D个最大值所对应的θ值就是 D个信号源的方位角。
但实际中是使用有限个数据样本来估计自相关矩阵RX的,所有对应于噪声功率的特征值并不相同,而是一组差别不大的值。所以我们采用一种效果理想、计算量小的一种统计方法:MDL准则[2]来一致估计信号源的数目。 在基于MDL的方法中,信号数是使下述准则最小的自变量:
(9)
其中,λi是样本协方差矩阵的特征值,N是计算的快拍数,M为阵元数,式(9)中的第一项可以直接从对数似然函数得到,第二项是由MDL准则引入的罚因子。
经过计算求出使式(9)的值最小的数即为信号源数,一旦确定下信号源的数量后,其余的计算就按照上面所介绍的MUSIC算法一致。直至得到信号源的方位角。
应用SVD(奇异值分解)方法求信号相关矩阵的特征值与特征向量,通过MDL[2]准则判断信号个数,形成噪声子空间,根据进行谱峰搜索,完成MUSIC算法的DOA估计。系统应用程序流程如图2所示。
图2 系统算法流程图
利用MUSIC算法来进行测向估计是程序中的主体。将方位角的搜索范围设0°~360°,搜索步长设为0.5°。然后对每一个方位角,计算出阵列流形;再利用“爬山”法计算出极值点的大小,并确定极值点的位置(所谓的“爬山”法类似于梯度法:判断相邻点的大小,因为极值点的值大于临近左右两点的值,所以可根据“爬山”确定极值点的大小,并确定极值点的位置),然后再根据“冒泡”法由大到小排列极值,信号源数决定所要选取的DOA信息。接着利用串口发送程序将结果通过并串转换,经MAX232电平转换后可通过PC机串口接收程序在PC机上显示出来。然后,程序进入下一次重复的测向运算或者进入低功耗状态。
谱峰搜索利用成熟的排序算法,例如起泡法,或者是快速排序算法。如果采用起泡法则其运算量约为K*N*(N-1),其中N为序列的长度,K为常数,利用起泡法可以得到严格的排序结果,如果采用快速排序算法其运算量和需要排序的数据具有一定的关系,一般而言,快速排序算法的运算量要小于起泡法。起泡算法对于存储空间的要求都不大,只需2~3倍于数据的长度即可。快速排序算法由于用到了递归的思想因此需要较大的存储空间,但是考虑到定位精度为0.5°,因此序列长度约为720,6713芯片的存储空间已经足够了。
4 计算机仿真结果
利用Matlab模拟实现信号源:入射角为-30°与30°;快拍数为1 024;信噪比均为20 dB,采样频率为100 kHz;阵元数量为5。将“信号”数据联接到该测向系统中,得到的信息数据见表1。
表1 DOA信息数据入射角度导引向量信息(便于航空数据链的连接)30°实0.929
904,0.999 958,0.934 579, 0.866 065, 0.929 904虚-0.367 803,-0.009
138,0.355 755 ,0.499 931,0.367 803-29.5°实0.929 906,0.999 959,0.934 580,
0.866 066,0.929 904虚0.367 802,0.009 137,-0.355 755, -0.499 931,-0.367
802
显示结果如图3所示。
图3 测向结果显示图
结果显示,经系统测向后得到的结果与理论推倒的结果相差无几,所以,该系统基本上可满足测向需求。
5 结 语
本文描述了基于TI公司的TMS320C6713的基础上实现阵列测向的MUSIC算法,在实现过程中,采取了一些有效的措施减少了计算量,并得出实际应用中的一种简单实用的谱峰搜索方法。整个程序由两部分完成:一部分是协方差矩阵形成部分,另一部分为矩阵分解以及谱峰搜索部分,前一部分主要由硬件描述语言完成,后一部分主要用C语言编程后经DSP编译器编译后经JTAG仿真接口下载到芯片中。
参 考 文 献