一种分时复用硬件资源的信号子空间分解的fpga实现模块及其fpga实现方法

文档序号:9844078阅读:1571来源:国知局
一种分时复用硬件资源的信号子空间分解的fpga实现模块及其fpga实现方法
【技术领域】
[0001]本发明属于阵列信号处理技术领域,具体的说是一种分时复用硬件资源的信号子 空间分解的FPGA实现模块及其FPGA实现方法。
【背景技术】
[0002] 20世纪70年代末开始,在空间谱估计方面涌现出了大量的研究成果和文献,波达 方向估计(D0A)是空间谱估计研究的重要课题。对于同一参考信号源来说,各天线阵元所接 受到的信号之间存在着相位差,从而形成谐波,不同方向的信号源对应着不同的谐波频率, 只要估计出各谐波频率,即可求出各对应信号源的波达方向。最初的波达方向估计方法是 基于傅里叶变化的线性谱估计方法,主要包括BT法和周期法。由于受到瑞利极限的限制,无 法获得超高分辨率性能,且抗噪声能力差,未能取得满意的效果。后出现基于统计分析的极 大似然谱估计方法,因其具有很高分辨性能而受到人们关注,然而,最大似然估计法要对高 维参量空间进行搜索,运算量极大,难于在实践中得到应用。1967年,Burg提出了最大熵谱 估计方法,开始了现代谱估计的研究。八十年代以后,学术界提出了一类基于矩阵特征值分 解的谱估计方法,其中由美国Schmidt等人提出的多重信号分类(MUSIC)算法最为突出。其 核心思想是对阵列输出的协方差矩阵做特征值分解,把整个特征空间分为信号子空间和噪 声子空间,利用两者互相正交的特性,定义一个伪谱,搜索到的谱峰对应的角度即为入射信 号的波达方向。
[0003] 在MUSIC算法中,信号和噪声子空间分解是硬件实现的一个难题,矩阵特征值分解 是算法硬件实现中最为复杂的问题。针对这一问题,目前,矩阵特征值分解主要有Jacobi算 法和QR算法,由于Jacobi比QR算法更加准确,因此设计中常常采用Jacobi算法进行矩阵的 特征值分解,再根据估计信号源数目计算,将特征向量空间分解为信号子空间和噪声子空 间,这其中包含了大量的乘法和非线性的运算,如何合理的实现这些运算是在硬件实现时 亟需考虑的问题。
[0004] 子空间分解需要大量的计算,在矩阵特征值分解和信号源估计中又涉及不同的运 算方式,需要采用不同的硬件处理结构,目前所提出的几种硬件实现方法上,存在以下的缺 陷和不足:
[0005] 第一,对于高速实现子空间分解问题,国内目前大多使用数字信号处理器(DSP)实 现,对于八元阵而言,能够把MUSIC整个算法的计算时间降低至少一半,加速比达到2.37,在 ms量级,但在很多实际场合仍难达到要求。
[0006] 第二,在矩阵特征值分解步骤采用FPGA实现,信号源数目估计计算采用DSP实现。 对于计算八元阵的矩阵特征值而言,目前可在us量级完成,时间明显少于DSP,但信号源数 目估计计算使用DSP,一方面使得整个计算时间不得不停留在ms量级,另一方面导致整个系 统涉及到FPGA和DSP的互联互接问题,涉及到FPGA和DSP运算之间的相互转换,增加了设计 难度。
[0007] 第三,采用FPGA来实现整个子空间分解,能够完成的子空间分解更加快捷的实现 技术,具有灵活性强、并行度高、便于调试和扩展接口的特点。通过Jacobi算法实现特征值 分解,对于其中的非线性运算,在保证一定精确度的条件下,可以仅用加法和移位就能实 现,计算速度大大增加。目前,完成四元阵的MUSIC算法需要30.59us,使用逻辑资源是12007 个;完成八元阵的MUSIC算法需要373.99us,使用逻辑资源是29472个。而对基于信息论方法 的AIC准则信号源数目估计计算,涉及大量对数运算,需要硬件系统中存在对数运算的协处 理器,所以基于FPGA的子空间分解实现,需要两个不同的结构来实现Jacobi算法和信号源 数目估计计算,消耗了大量硬件资源,同时也降低了其分解的速度,因此在资源消耗和速度 上有可以改进的空间。

【发明内容】

[0008] 本发明是针对现有FPGA实现MUSIC中子空间分解算法的不足,并结合自动排序的 过关Jacobi算法的特点,利用等价变换的信号源数估计计算,提出一种分时复用硬件资源 的信号子空间分解的FPGA实现模块及其FPGA实现方法,以期能在满足速度要求的前提下实 现分时复用FPGA的硬件资源,从而节约硬件资源并提高灵活性,进而实现信号子空间分解 的准确、快速计算。
[0009 ]本发明为解决技术问题采用如下技术方案:
[0010] 本发明一种分时复用硬件资源的信号子空间分解的FPGA实现模块的特点是包括: 自动排序的过关Jacob i算法单元和空间信号源数目估计计算单元;
[0011] 所述自动排序的过关Jacobi算法单元读取空间信号源对应的N阶协方差矩阵A = [aPq]nXn并进行运算,获得N阶的对角矩阵Ak;所述对角矩阵A k的主对角线上的元素为所述 N阶协方差矩阵A的特征值人:,λ2,…,λρ,…人,…人:且人:,λ2,…,λρ,…人,…,λη按降序排 ^ll;l <p<n;l <q<n;p^q;
[0012] 所述空间信号源数目估计计算单元将所述特征值 操作数并进行运算,获得2n个运算结果,包括η个特征值和的对数ln_sumi,ln_sum2,…,ln_ sumn及η个特征值积的对数ln_acci,ln_acc2,…,ln_accn;再利用等价变换的AIC准则法对 所述2n个运算结果进行运算,获得一个先递减后递增的AIC序列AIC^AICs,…,AIC P,…, AICq,…,AICn;从所述AIC序列厶1(:1,厶1(: 2,.",厶1〇),.",厶101,"^1&1中选出一个最小值,以 最小值所对应的下标并减去1即为信号源的数目估计值num。
[0013] 本发明一种分时复用硬件资源的信号子空间分解的FPGA实现方法的特点是按如 下步骤进行:
[0014] 步骤1、对接收到的空间信号源所对应的着协方差矩阵
进行自动排序的过关Jacob i算法处理,获得N阶的对角矩阵Ak;
[0015]步骤1.1、选取一个单调递减且逐渐趋于零的数列ai,a2,…, ai,…,ak作为关值,并 满足 ai>a2>-.ar">ak 且 =〇 ="并净
[0016] 步骤1.2、初始化i = l;
[0017] 步骤1.3、初始化p = l;
[0018] 步骤1.4、初始化q = l;
[0019] 步骤1.5、判断p = q是否成立,若成立,则将q+1赋值给q;并执行步骤1.6,若不成 立,则直接执行步骤1.6;
[0020] 步骤1.6、判断| aPq | >ai是否成立,若成立,则对N阶协方差矩阵A利用自动排序的 过关Jacobi算法进行旋转变换,获得第i次旋转变换矩阵A i;若不成立,则将q+Ι赋值给q;并 返回步骤1.6执行,直到q = n为止;
[0021 ] 步骤1.7、将p+1赋值给p;并返回步骤1.5执行;直到p = n为止;
[0022] 步骤1.8、将i+Ι赋值给i ;并返回步骤1.3执行;直到i = k为止;从而获得N阶的对角 矩阵Ak;且所述对角矩阵Ak的主对角线上的元素为所述N阶协方差矩阵A的特征值λ:, 入2,…λρ,…人^,…λη;且λι,λ2,…λρ,…人^,,··λ η按降序排列;
[0023]步骤2、利用等价变换的AIC准则估计信号源数目
[0024] 步骤2.1、对式(1)所示的AIC表达式进行等价变换,获得等价变换的AIC表达式如 式(2)所示:
[0025] AIC(num+l)=2K(N_num)1η Λ(num)+2num(2N_num) (1)
[0026]
(2)
[0027] 式(1)和式(2)中,Κ表示信号采样的快拍数,num表示待估计的信号源的个数,NS 阵元数,Λ (num)为似然函数;λ」表示第j个特征值,1 < j <n;
[0028] 步骤2.2、利用式(3)所示的泰勒级数展开式获得第j个特征值的对数ln(\):
[0029]
(3)
[0030] 式(3)中,X表示操作数,且xe[-l,l];m表示泰勒级数展开式的项数;
[0031 ]步骤2.3、利用式(4)获得第j个特征值λ」所对应的N个累加和对数ln_sumj,从而获 得η个特征值和的对数ln_ _sumi,ln_sum2,…,ln_sumj,…,ln_sumn:
[0032]
(4)
[0033] 步骤2.4、利用式(5)获得第j个特征值λ」所对应的N个乘积的对数ln_aCCj,从而获 得η个特征值和的对数ln_ acci,In-acc2,…,In-accj,…,In-accn:
[0034]
(5)
[0035] 步骤2 · 5、将n个特征值和的对数In-sumi,ln_sum2,…,ln_sumj,…,ln_sumn以及n 个特征值和的对数ln_acci,ln_acc2,··_,ln_accj,··_,ln_accn代入式(2)中,从而获得一个 先递减后递增的AIC序列ΑΚΜΑΙΟ··,AICP···,AICq···,AICn;
[0036] 步骤2.6、从所述厶1(:序列厶1(:1,厶1(^^1〇^^1(^^1〇 1中选出一个最小值,以 最小值所对应的下标并减去1即为信号源的数目估计值num。
[0037] 本发明一种分时复用硬件资源的信号子空间分解的FPGA实现电路的特点是包括: 第一处理模块PE 1、第二处理模块PE2、第三处理模块PE3、寄存器组Oregi s ter_group0、寄存 器组1代〖丨8丨61'_〖1'0即1、寄存器组2代〖丨8丨61'_〖1'0即2、寄存器组3代〖丨8丨61'_〖1'0即3、寄存器 组 4regi s ter_group4、比较单元 Comp_PE、存储器 D_RAM;
[0038] 所述存储器D_RAM存入空间信号源对应的N阶协方差矩阵A = [apq]nXn;
[0039] 所述寄存器组Oregister_groupO从所述存储器D_RAM中读取N阶协方差矩阵A的p 行元素;
[0040] 所述寄存器组lregister_groupl从所述存储器D_RAM中读取N阶协方差矩阵A的q 行元素;
[0041 ] 所述寄存器组4register_group4从所述存储器D_RAM中读取N阶协方差矩阵A的p 列和q列元素;
[0042]所述比较单元Comp_PE从所述存储器D_RAM中依次读取N阶协方差矩阵A中的非主 对角线元素 aPq并与所设定的关值进行比较,若非主对角线元素 aPq的绝对值大于设定的关 值,则利用第一处理模块PE1对N阶协方差矩阵中主对角线上的元素进行计算,获得自动排 序的过关Jacobi算法中的cos9和sin9 ;再根据cos9和sin9、所述寄存器组〇register_ groupO、寄存器组lregister_groupl、寄存器组4register_group4中存储的元素,当非主对 角线元素 aPq的绝对值大于设定的关值时,利用第二处理模块
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1