复信号抗干扰矩阵上三角化方法和信号抗干扰处理装置的制造方法

文档序号:10534793阅读:258来源:国知局
复信号抗干扰矩阵上三角化方法和信号抗干扰处理装置的制造方法
【专利摘要】本发明涉及一种复信号抗干扰矩阵上三角化方法和信号抗干扰处理装置,其方法包括:在边界处理单元对输入的第一复信号数据进行CORDIC旋转求模运算和对所存储的实数数据进行CORDIC旋转求模运算,得到求模结果值和旋转因子,用求模结果值更新实数数据,并向后向的内部处理单元输出所得到的旋转因子;在内部处理单元根据前向的边界处理单元输出的旋转因子,对输入的复信号数据的以及所存储的第三复信号数据的进行两级CORDIC旋转运算,获得第四复信号数据、第五复信号数据,用第五复信号数据更新第三复信号数据,将第四复信号数据输出至后续的边界处理单元或者内部处理单元,采用本发明方案,可以提高运算速度、减少资源的占用率。
【专利说明】
复信号抗干扰矩阵上三角化方法和信号抗干扰处理装置
技术领域
[0001] 本发明涉及复信号处理技术领域,特别是涉及一种复信号抗干扰矩阵上三角化方 法和信号抗干扰处理装置。
【背景技术】
[0002] 在北斗导航技术中,抗干扰是在保证期望信号损失尽量小的情况下,抗干扰模块 是有效地对外部环境存在的突发窄带干扰以及压制式干扰进行抑制,从而保证后端接收机 正常工作的一种预处理方法。在实现过程中,抗干扰软件的本质是采用一种自适应滤波最 佳准则,对输入信号自适应配置权值,在干扰来向产生较深零陷,实现干扰对消,从而使输 出误差最小。抗干扰算法的选取直接影响到抗干扰效果,判定抗干扰算法优劣主要考虑权 值的收敛特性,包括收敛速度和收敛的准确性,为保证算法的收敛速度足够快,结合成本等 因素考虑,抗干扰软件通常采用在线可编程逻辑器件(Field-Programmable Gate Array, FPGA)作为解决方案。最佳滤波准则目标方程的解是抗干扰算法的最优解权值,然而,在解 方程过程中,需对输入数据的自相关矩阵进行求逆运算,计算复杂度极高,不利于FPGA工程 化实现。
[0003] 传统的解决方法,采用递推的改进算法,对最优权值进行搜索,这避免了对矩阵直 接进行求逆运算,降低了算法复杂度,但同时算法的收敛性能以及所得权值的稳定性也相 应地降低。QRD-SMI算法是对目标方程求解过程的一种优化算法,其采用Givens旋转对矩阵 进行上三角化,从而避免了矩阵求逆,解权值等价于直接矩阵求逆的最优解,在保证抗干扰 性能的同时,降低了算法复杂度。QRD-SMI算法在Givens旋转过程中,采用了⑶RDIC (Coordinate Rotation Digital Computer,坐标旋转数字计算机)技术,但C0RDIC本身不 支持对复信号数据进行旋转,而实际北斗导航信号需经过模拟和数字下变频至零频复信号 进行处理。在C0RDIC扩展中,可以加入一个含指数的矩阵实现C0RDIC的复数旋转,但由于这 种方式中存在复指数运算,在FPGA实现中,或采用常用的查找表方法,占用资源非常庞大, 实时性降低,不适用于工程化实现。

【发明内容】

[0004] 本发明的目的在于提供一种复信号抗干扰矩阵上三角化方法和复信号抗干扰处 理装置,可以提高运算速度、减少资源的占用率。
[0005] 本发明的目的通过如下技术方案实现:
[0006] 一种复信号抗干扰矩阵上三角化方法,所述方法应用于基于FPGA实现的信号抗干 扰处理装置中,所述信号抗干装置包括C0RDIC旋转阵,所述C0RDIC旋转阵包括边界处理单 元、内部处理单元,所述方法包括:
[0007] 将输入的复信号数据矩阵中的数据分配输入给边界处理单元、内部处理单元;
[0008] 在边界处理单元对输入的第一复信号数据的实部和虚部进行第一级C0RDIC旋转 求模运算和对所存储的实数数据进行第二级C0RDIC旋转求模运算,得到两级旋转求模结果 值和旋转因子,用所述两级旋转求模结果值更新所述实数数据,并向后向的内部处理单元 输出所得到的旋转因子;
[0009] 在内部处理单元根据前向的边界处理单元输出的旋转因子,对输入的第二复信号 数据的实部和虚部以及所存储的第三复信号数据的实部和虚部进行两级C0RDIC旋转运算, 获得第四复信号数据、第五复信号数据,用所述第五复信号数据更新所述第三复信号数据, 将所述第四复信号数据输出至后续的边界处理单元或者内部处理单元。
[0010] 一种复信号抗干扰处理装置,包括数据分配单元和C0RDIC旋转阵,所述C0RDIC旋 转阵包括边界处理单元、内部处理单元:
[0011] 数据分配单将输入的复信号数据矩阵中的数据分配输入给边界处理单元、内部处 理单元;
[0012] 边界处理单元用于对输入的第一复信号数据的实部和虚部进行第一级⑶RDIC旋 转求模运算和对所存储的实数数据进行第二级C0RDIC旋转求模运算,得到两级旋转求模结 果值和旋转因子,用所述两级旋转求模结果值更新所述实数数据,并向后向的内部处理单 元输出所得到的旋转因子;
[0013] 内部处理单元用于根据前向的边界处理单元输出的旋转因子,对输入的第二复信 号数据的实部和虚部以及所存储的第三复信号数据的实部和虚部进行两级C0RDIC旋转运 算,获得第四复信号数据、第五复信号数据,用所述第五复信号数据更新所述第三复信号数 据,将所述第四复信号数据输出至后续的边界处理单元或者内部处理单元。
[0014] 采用上述本发明的方案,是将复数旋转分解成了两次实数旋转,避免了对数据矩 阵直接求逆运算和指数运算,提高了运算速度、减少了资源的占用率,同时,两次实数旋转 与原本的复数旋转具有等价性。
【附图说明】
[0015] 图1为C0RDIC的旋转模式的坐标关系示意图;
[0016]图2为基于C0RDIC算法的旋转阵;
[0017]图3为边界处理单元的处理框架示意图;
[0018]图4在输入负旋转角度时内部处理单元的处理框架示意图;
[0019]图5在输入正旋转角度时内部处理单元的处理框架示意图;
[0020]图6为本发明实施例的复信号抗干扰矩阵上三角化方法的实现流程示意图;
[0021]图7为本发明实施例的复信号抗干扰矩阵上三角化方法应用于抗干扰数据处理中 的实现流程示意图。
【具体实施方式】
[0022]为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本 发明进行进一步的详细说明。应当理解,此处所描述的【具体实施方式】仅仅用以解释本发明, 并不限定本发明的保护范围。
[0023] 为了便于理解本发明的方案,以下首先对传统技术以及传统技术所存在的问题进 行说明。
[0024] 一、C0RDIC 算法
[0025] CORDIC(Coordinate Rotation Digital Computer)算法即坐标旋转数字计算方 法,是J.D. Voider于1959年首次提出,通过移位和加减运算,能递归计算常用的函数值,如 3111、〇^、511111、(: 0此等函数,〇)1^1(:技术首先用于导航系统,使得矢量的旋转和定向运算不 需要做查三角函数表、乘法、开方及反三角函数等复杂运算。
[0026]自适应滤波QRD-SMI算法具有良好的数值稳定性,并可采用Systolic阵列实现实 时流水计算,易于在FPGA硬件平台上进行实现,QRD-SMI算法的核心是通过Givens旋转对数 据矩阵进行上三角化,C0RDIC是一种有效实现Givens旋转的技术。
[0027] C0RDIC有两种计算模式:旋转模式和求模模式。旋转模式将给定矢量进行要求角 度9的旋转,计算新矢量的坐标值;求模模式则将给定矢量向x轴旋转,以求得原矢量的模长 和幅角。下面以旋转为例说明其原理。
[0028]旋转模式的坐标关系示于图1,设坐标Xo-Yo逆时针旋转0角成为新的X-Y坐标系,矢 量P的坐标由(xo,yo)变成(x,y),则有 f^ = .v" cos6^+ v,. sin 6^ ,,,
[0029] l^-^sin^^cos. 山
[0030]若将旋转角度9分解为若干固定角度的线性集合,BP [0031 ] 0 = 31ai+52a2+."+5nan,5i= ± 1 (2)
[0032] 则可将坐标系旋转过程分解成若干次旋转集合,即
[0033] (3) = - v/ Sln 5iai + cos:4?,
[0034] 若取固定角度集合ai = tan-H2-O,代入式(3)可得
[0035] I= C0S s>a-+ y>sin = C0S 5>a> 2~; + ^ 4 ) 1 J/+i = -Y;sin S;ai +>;/ cos ^.6/,. = cos4fl,( V,. - .v/2~,)
[0036]令21为要求转角0与0^之差^ = 0-0^,其中0^为已完成旋转的角度,则有
[0037] zi+i = zi-8iai (5)
[0038] C〇sSiai为公因子,旋转过程中可不进行计算,最后可通过连乘补模,联合式(5)和 式(4)可得C0RDIC技术的递推公式: xm ~ xi+ y^
[0039] 4 yM - yf -xt2 1 K 6:) zm=zi~^ai
[0040]可以看出C0RDIC算法实际上只是由一系列简单的移位和加法操作组成,有利于在 FPGA中实现。设原矢量(XQ,yQ)经n次基本旋转公式循环后结果为(x',/ ),原矢量精确旋转0 角度后,新矢量为(x,y),则有
(7)
[0042]其中K(n)是在递推过程中,模长的校正值,通过对旋转乘以该校正值,保持原矢量 模值不变。
[0043] 由于tan-1(1)=45°,tan-Hl/2)~26°,为使⑶RDIC算法适应于全平面的旋转问 题,将上面的基本公式循环增加一步初始旋转,即首先将初始矢量旋转90°,(XQ,yo)变为(S yo, SXQ),S决定旋转方向。这能够将矢量都旋转到一、四象限。这个改进使CORDIC算法能完成 对平面矢量进行从-180°~+180°的旋转运算。
[0044]根据式(6)构造旋转矩阵
(7) C8 )
[0048]即任意角度旋转可分解成一系列微旋转之积,每个微旋转仅用到了移位和加法。 我们一般取有限角度构成旋转序列,角度集的大小决定了角度逼近程度,即
(.9) (10)
[0052]式(10)即为式(8)。
[0053]在FPGA硬件中实现时,矩阵上三角化有两种节点确定方式不同,构成了两种 C0RDIC节点即引导节点和旋转节点,令旋转次数为N,则引导节点的处理流程为:
[0054]若y > 0,则人。=1,否则,人。=-1,其中,xi = ,yi =-人。x;对于 i从 2 到 N+1,若yi-1 > 〇,则Xi = 1,否则,= -1 ;
[0055]旋转节点的处理流程为:
[0056]幻=人。丫,yi = -人。x 对于;[从 2到N+1: x] f" 1 12^2) Tx-,1 、
[0057] = i " Ui; U」L-為2 i」U-丨」
[0058] 二、CORDIC算法存在的问题
[0059]以上是CORDIC旋转技术的介绍,是基于实数的旋转,CORDIC本身不支持复数旋转, 在CORDIC扩展中,可以加入一个含指数的矩阵实现CORDIC的复数旋转: G 5'ir 1 〇 1「尤 〇.1…
[0060] n ( W、 : n (12) L-s c」l〇 exp(-/叫))儿凡」[_0_
[0061] 基于CORDIC算法的旋转,旋转即是求模的过程,因此其结果为不小于零的整数,在 复数求模过程中,将原复向量分解为一个复矩阵和一个实向量相乘,即进行两次求模运算, 式(12)中存在复指数运算,在FPGA实现中,或采用常用的查找表方法,占用资源非常庞大, 实时性降低,不适用于工程化实现,为了解决这一问题,本发明方案的原理是对复数旋转进 行反递推,提出一种适用于FPGA工程化实现的CORDIC复数旋转方法,该方法结合实际主要 应用于抗干扰矩阵上三角化工程中。以下对本发明方案的原理进行详细阐述。
[0062] 图2为基于⑶RDIC算法的旋转阵,其中为四路输入复信号的实部,< 为 虚部,数据从顶部流水进入,分配至各处理单元进行处理,处理单元分为边界处理单元(圆 形)和内部处理单元(方形),图中Z11~Z44为各处理单元寄存器编号,用于保存前时刻旋转 完毕后的值,9^为数据经过处理单元后,得到的后向处理单元所需输入的旋转参数(在后续 称为旋转参数),下面对复数变换进行递推,并介绍各处理单元的处理过程。
[0063] 1、复数 Givens 变换:
[0064]复数Givens旋转为以下初等变换:
[0065] c 5 u u Ar 入k _ u u -xi Ai+i 入k -s e*_ _〇 ??? 〇 y'i y,+i ??? yk_ _0 ??? 0 0 yi+l ??? yk_
[0066]在上式中,变换矩阵为
[0067] G~ C ( i 4} _-5 c _ '
[0068] 消去了 XlT的元素yi。
[0069] 为实现这种消去及保证G为酉矩阵,要求 -s ? Xf + c ? 1^- = 0
[0070] i / ?5 + c.'i-r = l {15) c = c
[0071] 方程(15)的一个解为
(! (? 5
[0073] 2、边界处理单元:
[0074] C0RDIC旋转阵的边界处理单元的任务就是构造一个酉矩阵,每输入一个复数就将 其消为0,并且寄存器中仍保持为正实数。构造的酉矩阵为
[0075] G =[严、也為CX7! -广咚) q
[0076]具体可由图3中的硬件结构实现:
[0077] 为方便书写推导,令r为当前边界处理单元的寄存器中的值,a#Pa2对应输入复信 号数据的实部和虚部值,与图2中和4对应, r、&1和£12为实数。
[0078] 其中,
(1 8}
[0080]构造的酉矩阵消去过程如下式所示 也_心)]「r -s{ (c2 +%) c ax + ia2
[0081] - "* (19) (c]r + + w2) +,*(啊<32 -) ^cxax - 5{c2r) + i [cxa2 -
[0082] 将(19)带入(18)可得: i~~5 ~ ~ clr-\-slc2al + r*" 「 i sx\〇, -s,s.a, - 0 ,
[0083] 122 1 1 (2(f) c\ax -s{cj' - 0 cxu2 ~sxs^r - 0
[0084] 证明构造的酉矩阵是有效的。
[0085] 3、内部处理单元:
[0086] 边界处理单元通过二级旋转完成边界处理,并将形成的旋转因子(edpeo传递至 内部处理单元,其中,知指C2、S2;Ql指S1、S2。由于知带有方向性,在内部处理单元确定初次旋 转方向,因此分为两种情况_9 2(负旋转角度)和92(正旋转角度)讨论内部处理单元的处理流 程D
[0087] (1)当输入的是_92时 Cj ^ (c2 +z*52) dx + id2 -5, ( c2 - ) Cj b' ib2 (c,^ -h sxc2bx - s{s2b2) + i (c}d2 + s}c2b2) (, 1)
[0088] - sxc2dx ~ sxs2d2) + i [cxb2 ~sxczd2 + sxs2dx) "
[_cldl + ^ {c2bx -5262)] + /[cjJ2 (5,^ +c262)] - sx {c2dl 4- 57a^)] 4- i - 5{ (c2d^ - s2dx)]
[0089] 参见图4所示,在负角度内部处理单元实现中,得到:
[0090] ^ 一卜 J V (22) -~S.2 C2」|_ A」 c2t\ -
[0096]上式中di+id2为当前内部处理单元中存储的复信号数据,bi+ib2为输入到当前内 部处理单元中的复信号数据,用n+ir2更新当前内部处理单元中存储的复信号数据,并输出 yi+iy2〇
[0097]需要说明的是,公式(26)~(27)中,ri = cidi+siC2bi_siS2b2、r2 = cid2+siS2bi+ siC2b2、yi = cibi-sic2di_sis2d2、y2 = cib2-sic2d2+sis2di 〇
[0098] (2)当输入的是02时
[0100] 参见图5所示,在正角度内部处理单元实现中,得到
[0107]上式中di+id2为当前内部处理单元中存储的复信号数据,bi+ib2为输入到当前内 部处理单元中的复信号数据,用n+ir2更新当前内部处理单元中存储的复信号数据,并输出 yi+iy2〇
[0108] 需要说明的是,公式(31)~(34) *,ri = cidi+si(C2bi+S2b2)、r2 = cid2+si(C2b2- S2bi)、yi = cibi-si(C2di-S2d2)、cib2-si(C2d2+S2di)。
[0109] 本发明通过递推复数旋转公式,证明了复数旋转分解为两次实数旋转的等价性, 实现了基于FPGA的抗干扰矩阵上三角化。以下对本发明方案进行详细阐述。
[0110] 实施例一
[0111]本发明实施例一提供一种复信号抗干扰矩阵上三角化方法,该方法应用于基于 FPGA实现的信号抗干扰处理装置中,所述信号抗干装置包括C0RDIC旋转阵,所述C0RDIC旋 转阵包括边界处理单元、内部处理单元。
[0112]参见图6所示,为本发明实施例一的复信号抗干扰矩阵上三角化方法的实现流程 示意图。如图6所示,本实施例一中的复信号抗干扰矩阵上三角化方法包括如下步骤:
[0113]步骤S101:将输入的复信号数据矩阵中的数据分配输入给边界处理单元、内部处 理单元;
[0114] 这里,复信号数据矩阵对应的复信号可以是北斗导航信号,但也不限于此;
[0115] 具体地,可以预设的分配规则将复信号数据矩阵中的各数据分配输入给对应的边 界处理单元、内部处理单元,具体应用时,可以采用任意可以实现的方式;
[0116]步骤S102:在边界处理单元对输入的第一复信号数据的实部和虚部进行第一级 C0RDIC旋转求模运算和对所存储的实数数据进行第二级C0RDIC旋转求模运算,得到两级旋 转求模结果值和旋转因子,用所述两级旋转求模结果值更新所述实数数据,并向后向的内 部处理单元输出所得到的旋转因子;
[0117] 在其中一个实施例中,对输入的第一复信号数据的实部和虚部进行第一级C0RDIC 旋转求模运算和对所存储的实数数据进行第二级C0RDIC旋转求模运算,得到两级旋转求模 结果值和旋转因子的过程可以包括如下步骤:
[0118] (1 ? 1)进行对ai、&2的第一级C0RDIC旋转求模运算,获得
[0119] 其中,m、a2分别为所述第一复信号数据的实部、虚部,£
[0120]具体地,首先对&1、吧进行第一级⑶RDIC旋转求模运算,得到第一复信号数据的模 值,即^a{+a22,再基于&1、a2if+a丨获得c 2、s2,c2、s2表示第一旋转因子,即上述原理叙述 中的02;
[0121 ] (1.2)进行对+ af、:r的第二级C0RDIC旋转求模运算,获得 jaf +.g| +r2、ci、si;
[0122] 其中,r为所述存储数据
[0123] 具体地,首先对j?f +?22、r进行第一级C0RDIC旋转求模运算,得到两级旋转求模结 果值,即,再基于+4 +沪获得81、82,81、82表示第二旋转因子, 即上述原理叙述中的01;
[0124] 本发明实施例中的的旋转因子包括这里的第一旋转因子和第二旋转因子。
[0125] 步骤S103:在内部处理单元根据前向的边界处理单元输出的旋转因子,对输入的 第二复信号数据的实部和虚部以及所存储的第三复信号数据的实部和虚部进行两级 C0RDIC旋转运算,获得第四复信号数据、第五复信号数据,用所述第五复信号数据更新所述 第三复信号数据,将所述第四复信号数据输出至后续的边界处理单元或者内部处理单元;
[0126] 在其中一个实施例中,在根据C2、S2确定的旋转角度为负旋转角度时,所述对输入 的第二复信号数据的实部和虚部以及所存储的第三复信号数据的实部和虚部进行两级 C0RDIC旋转运算,获得第四复信号数据、第五复信号数据的过程可以包括步骤:
[0127] (2 ? 1)通过 C2、_S2 对 b2、bi 进行第一级 C0RDIC 旋转运算,得到 C2b2+S2bi、C2bi_S2b2;
[0128] 本步骤相当于执行上述的公式(22)的过程;
[0129] (2 ? 2)通过 C2、-S2 对 di、d2 进行第一级 C0RDIC 旋转运算,得到 C2di+S2d2、C2d2_S2di;
[0130] 本步骤相当于执行上述的公式(23)的过程;
[0131 ] (2 ? 3)通过ci、_si对di、C2bi_S2b2进行第二级⑶RDIC旋转运算,得到cidi+siC2bi_ SlS2b2;
[0132] 本步骤相当于执行上述的公式(24)的过程;
[0133] (2 ? 4)通过ci、_si对d2、C2b2+S2bi进行第二级⑶RDIC旋转运算,得到cid2+siS2bi+ SlC2b2;
[0134] 本步骤相当于执行上述的公式(25)的过程;
[0135] (2 ? 5)通过ci、_si对C2di+S2d2、bi进行第二级⑶RDIC旋转运算,得到cibi-siC2di_ SlS2d2;
[0136] 本步骤相当于执行上述的公式(26)的过程;
[0137] (2 ? 6)通过ci、_si对C2d2_S2di、b2进行第二级⑶RDIC旋转运算,得到cib2_siC2d2+ SlS2dl;
[0138] 本步骤相当于执行上述的公式(27)的过程;
[0139] (2 ? 7)生成以cidi+siC2bi_siS2b2为实部、cid2+siS2bi+siC2b2为虚部的第五复信号数 据,并生成以Clbl-SlC2dl_SlS2d2为实部、Clb2_SlC2d2+SlS2dl为虚部的第四复信号数据;
[0140] 其中,h、b2分别指第二复信号数据的实部和虚部,d^cb分别指第三复信号数据的 实部和虚部。
[0141] 在根据C2、s2确定的旋转角度为正旋转角度时,所述对输入的第二复信号数据的实 部和虚部以及所存储的第三复信号数据的实部和虚部进行两级C0RDIC旋转运算,获得第四 复信号数据、第五复信号数据的过程可以包括步骤:
[0142] (3 ? 1)通过 C2、_S2 对 bi、b2 进行第一级 C0RDIC 旋转运算,得到 C2bi+S2b2、C2b2_S2b;
[0143] 本步骤相当于执行上述的公式(29)的过程;
[0144] (3 ? 2)通过 C2、-S2 对 d2、di 进行第一级 C0RDIC 旋转运算,得到 C2d2+S2di、C2di_S2d2;
[0145] 本步骤相当于执行上述的公式(30)的过程;
[0146] (3 ? 3)通过 ci、_si 对 di、C2bi+S2b2 进行第二级⑶ RDIC 旋转运算,得到 cidi+si(C2bi+ S2b2);
[0147] 本步骤相当于执行上述的公式(31)的过程;
[0148] (3 ? 4)通过 ci、_si 对 d2、C2b2_S2bi 进行第二级⑶ RDIC 旋转运算,得到 cid2+si(C2b2_ S2bl);
[0149] 本步骤相当于执行上述的公式(32)的过程;
[0150] (3 ? 5)通过 ci、_si 对 C2di_S2d2、bi 进行第二级⑶ RDIC 旋转运算,得到 cibi-si(C2di_ S2d2);
[0151] 本步骤相当于执行上述的公式(33)的过程;
[0152] (3 ? 6)通过 ci、_si 对 C2d2+S2di、b2 进行第二级⑶ RDIC 旋转运算,得到 cib2_si(C2d2+ S2dl);
[0153] 本步骤相当于执行上述的公式(34)的过程;
[0154] (3 ? 7)生成以cidi+si(C2bi+S2b2)为实部、cid2+si(C2b2-S2bi)为虚部的第五复信号数 据,并生成以Clbl-Sl(C2dl_S2d2)为实部、Clb2_Sl(C2d2+S2dl)为虚部的第四复信号数据;
[0155] 其中,h、b2分别指第二复信号数据的实部和虚部,d^cb分别指第三复信号数据的 实部和虚部。
[0156] 旋转角度是正旋转角度还是负角度可以采用现有方式实现,具体可以参见上述的 引导节点的处理流程,在此不予赘述。在具体实现时,旋转角度是正旋转角度还是负角度一 般是由边界处理单元确定。
[0157] 在FPGA实现上,以四阵元抗干扰天线为例,FPGA芯片选取为xc7a200tf bg484-2,对 比传统的复数上三角化方法,比较结果如表1所示。
[0158] 表1本实施例的抗干扰矩阵上三角化方法与传统方案对比
[0160] 可以看出,在相同计算精度的条件下,本实施例的抗干扰矩阵上三角化方法相比 传统方法,资源占用减少了 55%,可在112MHz的时钟下运行,相比传统方法运算速度提高了 62%,在FPGA算法工程化过程中,资源和时序是设计师最关心的两个约束,本实施例方案极 大地节省了资源占用,提高算法运行速率,同时具有良好的可扩展性,由于各处理单元的接 口几乎相同,后续还可以通过时分复用的方式进一步进行资源优化。
[0161] 上述实施例中的复信号抗干扰矩阵上三角化方法可以较佳的应用于用于抗干扰 数据处理中,具有较好的应用前景。参见图7所示,为本发明的复信号抗干扰矩阵上三角化 方法应用于抗干扰数据处理中的一个具体的实施例。
[0162] 首先由外置天线接收卫星导航信号,经过射频模块下变频至中频送至抗干扰处理 模块,抗干扰处理模块分为三个部分,首先运用上述实施例中的复信号抗干扰矩阵上三角 化方法对输入的复信号数据矩阵进行上三角化,再通过权值解算模块将三角化数据矩阵进 行解算,得到最优配置权值,权值配置模块向各通道配置该最优权值,得到干扰抑制的结果 e输出至后续终端进行解析,完成整个抗干扰处理过程。传统的抗干扰处理过程,需要对数 据矩阵进行直接求逆,或者按传统的矩阵上三角化方法以避免求逆运算,但同时引入指数 运算,复杂度并无明显降低,资源占用非常庞大,采用本发明提出的复信号抗干扰矩阵上三 角化方法,在抗干扰处理过程,避免了对数据矩阵进行直接求逆运算和指数运算,同时输出 结果在理论上和最佳滤波解是等效的。
[0163] 根据上述本发明的复信号抗干扰矩阵上三角化方法,本发明实施例还提供一种复 信号抗干扰处理装置。
[0164] 本实施例的复信号抗干扰处理装置包括数据分配单元和C0RDIC旋转阵,C0RDIC旋 转阵包括边界处理单元、内部处理单元,其中,边界处理单元、内部处理单元的个数根据实 际需要设置。
[0165] 数据分配单将输入的复信号数据矩阵中的数据分配输入给边界处理单元、内部处 理单元;
[0166] 边界处理单元用于对输入的第一复信号数据的实部和虚部进行第一级⑶RDIC旋 转求模运算和对所存储的实数数据进行第二级C0RDIC旋转求模运算,得到两级旋转求模结 果值和旋转因子,用所述两级旋转求模结果值更新所述实数数据,并向后向的内部处理单 元输出所得到的旋转因子;
[0167] 内部处理单元用于根据前向的边界处理单元输出的旋转因子,对输入的第二复信 号数据的实部和虚部以及所存储的第三复信号数据的实部和虚部进行两级C0RDIC旋转运 算,获得第四复信号数据、第五复信号数据,用所述第五复信号数据更新所述第三复信号数 据,将所述第四复信号数据输出至后续的边界处理单元或者内部处理单元。
[0168] 在其中一个实施例中,所述边界处理单元可以包括:
[0169] 第一旋转求模模块,用于进行对ai、a2的第一级⑶RDIC旋转求模运算,获得C2、s 2、 sjci^ + 〇2 !
[0170] 第二旋转求模模块,用于进行对的第二级⑶RDIC旋转求模运算,获得 +a; +r2 ;
[0171 ]第一更新与输出模块,用于用+r_2更新r,并输出C2、S2、ci、si;
[0172] 其中,ai、a2分别为所述第一复信号数据的实部、虚部,r为所述存储数据, 。2、82、(31、81表示旋转因子,_^^ |2+€+:沪表示所述两级旋转求模结果值,
[0173] 在其中一个实施例中,所述可以内部处理单元包括:
[0174] 第一处理模块,用于在根据C2、S2确定的旋转角度为负旋转角度时,通过C2、_S2对 b2、bi进行第一级C0RDIC旋转运算,得到C2b2+S2bi、C2bi_S2b2;通过C2、-S2对di、d2进行第一级 0)1^)1(]旋转运算,得到〇2(11+82(12、〇2(12_82(11;通过(31、-81对(11、〇2131 -82匕2进行第二级001^)1〇旋 转运算,得到cidi+siC2bi_siS2b2;通过ci、-si对cb、C2b2+S2bi进彳丁第二级C0RDIC旋转运算,得 至丨Jcld2+SlS2bl+SlC2b2;通过Cl、-Sl对C2dl+S2d2、bl进行第二级⑶RDIC旋转运算,得到Clbl-SlC2dl-SlS2d2 ;通过Cl、-Sl对C2d2-S2dl、b2进行第二级⑶RDIC旋转运算,得到Clb2_SlC2d2 + SlS2dl ;生成以Cldl+SlC2bl_SlS2b2为实部、Cld2+SlS2bl+SlC2b2为虚部的第五复信号数据,并生 成以Clbl-SlC2dl_SlS2d2为实部、Clb2_SlC2d2+SlS2dl为虚部的第四复信号数据;
[0175] 第二更新与输出模块,用于用所述第五复信号数据更新所述第三复信号数据,将 所述第四复信号数据输出至后续的边界处理单元或者内部处理单元;
[0176] 其中,h、b2分别指第二复信号数据的实部和虚部,d^cb分别指第三复信号数据的 实部和虚部。
[0177] 在其中一个实施例中,所述内部处理单元可以包括:
[0178]第二处理模块,用于在根据C2、S2确定的旋转角度为正旋转角度,通过C2、_S2对bl、 b2进行第一级⑶RDIC旋转运算,得到C2bl + S2b2、C2b2-S2b,通过C2、-S2对d2、dl进行第一级 C0RDIC 旋转运算,得到 C2d2+S2di、C2di_S2d2,通过 Cl、_si 对 di、C2bi+S2b2 进行第二级⑶ RDIC 旋 转运算,得到cidi+si(C2bi+S2b2),通过Cl、-S1对d2、C2b2_S2bi进行第二级C0RDIC旋转运算,得 至丨Jcld2+Sl(C2b2-S2bl),通过Cl、-Sl对C2dl-S2d2、bl进行第二级⑶RDIC旋转运算,得到Clbl-Sl (C2dl_S2d2),通过C1、-S1对C2d2 + S2dl、b2进行第二级⑶RDIC旋转运算,得到Clb2_Sl(C2d2 + S2dl),生成以Cldl+Sl(C2bl+S2b2)为实部、Cld2+Sl(C2b2_S2bl)为虚部的第五复信号数据,并生 成以(31131-81(02(11-82(12)为实部、(^2-81(02(12+82(11)为虚部的第四复信号数据,第二更新与输 出模块,用于用所述第五复信号数据更新所述第三复信号数据,将所述第四复信号数据输 出至后续的边界处理单元或者内部处理单元;
[0179]其中,h、b2分别指第二复信号数据的实部和虚部,d^cb分别指第三复信号数据的 实部和虚部。
[0180]在其中一个实施例中的信号抗干扰处理装置,还可以包括:
[0181]权值结算模块,用于根据所述C0RDIC旋转阵的处理结果进行配置权值的计算;
[0182] 权值配置模块,用于向数据传输通道配置所计算出的配置权值,获得干扰抑制的 结果输出至终端进行解析。
[0183] 本发明实施例提供的信号抗干扰处理装置,需要指出的是:以上对信号抗干扰处 理装置的描述,与上述复信号抗干扰矩阵上三角化方法的描述是类似的,并且具有上述复 信号抗干扰矩阵上三角化方法的有益效果,为节约篇幅,不再赘述;因此,以上对本发明实 施例提供的信号抗干扰处理装置中未披露的技术细节,请参照上述提供的复信号抗干扰矩 阵上三角化方法的描述。
[0184] 以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实 施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存 在矛盾,都应当认为是本说明书记载的范围。
[0185] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并 不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来 说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护 范围。因此,本发明专利的保护范围应以所附权利要求为准。
【主权项】
1. 一种复信号抗干扰矩阵上三角化方法,其特征在于,所述方法应用于基于FPGA实现 的信号抗干扰处理装置中,所述信号抗干装置包括CORDIC旋转阵,所述CORDIC旋转阵包括 边界处理单元、内部处理单元,所述方法包括: 将输入的复信号数据矩阵中的数据分配输入给边界处理单元、内部处理单元; 在边界处理单元对输入的第一复信号数据的实部和虚部进行第一级CORDIC旋转求模 运算和对所存储的实数数据进行第二级CORDIC旋转求模运算,得到两级旋转求模结果值和 旋转因子,用所述两级旋转求模结果值更新所述实数数据,并向后向的内部处理单元输出 所得到的旋转因子; 在内部处理单元根据前向的边界处理单元输出的旋转因子,对输入的第二复信号数据 的实部和虚部以及所存储的第三复信号数据的实部和虚部进行两级CORDIC旋转运算,获得 第四复信号数据、第五复信号数据,用所述第五复信号数据更新所述第三复信号数据,将所 述第四复信号数据输出至后续的边界处理单元或者内部处理单元。2. 根据权利要求1所述的复信号抗干扰矩阵上三角化方法,其特征在于,所述对输入的 第一复信号数据的实部和虚部进行第一级CORDIC旋转求模运算和对所存储的实数数据进 行第二级CORDIC旋转求模运算,得到两级旋转求模结果值和旋转因子的过程包括:进行对B1、&2的第一级CORDIC旋转求模运算,获得( 进行2r的第二级CORDIC旋转求模运算: 其中,ai、a2分别为所述第一复信号数据的实部、虚部,r为所述存储数据,C2、S2、ci、si表3. 根据权利要求2的基于FPGA的复信号抗干扰矩阵上三角化方法,其特征在于: 在根据C2、S2确定的旋转角度为负旋转角度时,所述对输入的第二复信号数据的实部和 虚部以及所存储的第三复信号数据的实部和虚部进行两级CORDIC旋转运算,获得第四复信 号数据、第五复信号数据的过程包括步骤: 通过C2、-S2对b2、bi进行第一级CORDIC旋转运算,得到C2b2+S2bl、C2bl_S2b2 ; 通过C2、-S2对di、d2进行第一级CORDIC旋转运算,得到C2dl+S2d2、C2d2_S2dl; 通过 Cl、-Si 对 di、C2bi_S2b2 进行第二级 CORDIC 旋转运算,得到 cidi+siC2bi_siS2b2; 通过。1、-81对(12、02匕2+82131进行第二级(1)1^)1(]旋转运算,得到(31(12+8182131+8102匕2; 通过 C1、-S1 对 C2di+S2d2、bi 进行第二级 CORDIC 旋转运算,得到 cibi-siC2di_siS2d2; 通过 Cl、-Si 对 C2d2_S2di、b2 进行第二级 CORDIC 旋转运算,得到 cib2_siC2d2+siS2di; 生成以Cldl+SlC2bl_SlS2b2为实部、Cld2+SlS2bl+SlC2b2为虚部的第五复信号数据,并生成 以Clbl-SlC2dl_SlS2d2为实部、Clb2-SlC2d2+SlS2dl为虚部的第四复信号数据; 其中,h、b2分别指第二复信号数据的实部和虚部,(^、办分别指第三复信号数据的实部 和虚部。4. 根据权利要求2的复信号抗干扰矩阵上三角化方法,其特征在于: 在根据C2、S2确定的旋转角度为正旋转角度时,所述根据前向的边界处理单元输出的旋 转因子,对输入的第二复信号数据的实部和虚部以及所存储的第三复信号数据的实部和虚 部进行两级CORDIC旋转运算,获得第四复信号数据、第五复信号数据的过程包括步骤: 通过C2、-S2对bi、b2进行第一级CORDIC旋转运算,得到C2bi+S2b2、C2b2_S2b; 通过前向的边界处理单元输出的C2、-S2对d2、di进行第一级CORDIC旋转运算,得到C2d2+ S2dl、C2dl_S2d2; 通过Cl、-Si对di、C2bi+S2b2进行第二级CORDIC旋转运算,得到cidi+si(C2bi+S2b2); 通过Cl、-Si对d2、C2b2_S2bi进行第二级CORDIC旋转运算,得到Cid2+si (C2b2_S2bi); 通过(31、-81对02(11-82(12、131进行第二级(1)1^)1(]旋转运算,得到(31131-81(02(11-82(12); 通过Cl、-Si对C2d2+S2di、b2进行第二级CORDIC旋转运算,得到Cib2_si (C2d2+S2di); 生成以Cldl+Sl(C2bl+S2b2)为实部、Cld2+Sl(C2b2_S2bl)为虚部的第五复信号数据,并生成 以Clbl-Sl(C2dl_S2d2)为实部、Clb2_Sl(C2d2+S2dl)为虚部的第四复信号数据; 其中,h、b2分别指第二复信号数据的实部和虚部,(^、办分别指第三复信号数据的实部 和虚部。5. 根据权利要求1的复信号抗干扰矩阵上三角化方法,其特征在于,将该基于FPGA的复 信号抗干扰矩阵上三角化方法用于抗干扰数据处理中。6. -种复信号抗干扰处理装置,其特征在于,包括数据分配单元和CORDIC旋转阵,所述 CORDIC旋转阵包括边界处理单元、内部处理单元: 数据分配单将输入的复信号数据矩阵中的数据分配输入给边界处理单元、内部处理单 元; 边界处理单元用于对输入的第一复信号数据的实部和虚部进行第一级⑶RDIC旋转求 模运算和对所存储的实数数据进行第二级CORDIC旋转求模运算,得到两级旋转求模结果值 和旋转因子,用所述两级旋转求模结果值更新所述实数数据,并向后向的内部处理单元输 出所得到的旋转因子; 内部处理单元用于根据前向的边界处理单元输出的旋转因子,对输入的第二复信号数 据的实部和虚部以及所存储的第三复信号数据的实部和虚部进行两级CORDIC旋转运算,获 得第四复信号数据、第五复信号数据,用所述第五复信号数据更新所述第三复信号数据,将 所述第四复信号数据输出至后续的边界处理单元或者内部处理单元。7. 根据权利要求6所述的信号抗干扰处理装置,其特征在于,所述边界处理单元包括: 第一旋转求模模块,用于进行对的第一级⑶RDIC旋转求模运算,获得c2、S2、 + α2 ! 第二旋转求模模块,用于进行对+ f、r的第二级⑶RDIC旋转求模运算,获得C1、S1、 λ,2 + a%2 + r2 ' 第一更新与输出模块,用于用十<322 +.r_2更新:T,并输出C2、S2、Cl、SI; 其中,ai、a2分别为所述第一复信号数据的实部、虚部,r为所述存储数据,C2、 s2、 Cl、SI表示旋转因子,+4 +.__r2表示所述两级旋转求模结果值,8. 根据权利要求7的信号抗干扰处理装置,其特征在于,所述内部处理单元包括: 第一处理模块,用于在根据C2、S2确定的旋转角度为负旋转角度时,通过C2、_S2对b2、bl 进行第一级⑶RDIC旋转运算,得到C2b2 + S2bl、C2bl-S2b2;通过C2、-S2对dl、d2进行第一级 CORDIC 旋转运算,得到 C2di+S2d2、C2d2_S2di;通过 C1、-S1 对 di、C2bi_S2b2 进行第二级⑶ RDIC 旋 转运算,得到cidi+siC2bi_siS2b2;通过Cl、-Si对d2、C2b2+S2bi进行第二级⑶RDIC旋转运算,得 至1」(31(12 + 8182131 + 81〇2匕2;通过(31、-81对〇2(11 + 82(12、131进行第二级〇01?01〇方定转运算,得到(31131-SlC2dl-SlS2d2;通过Cl、-Sl对C2d2-S2dl、b2进行第二级⑶RDIC旋转运算,得到Clb2-SlC2d2 + SlS2dl ;生成以Cldl+SlC2bl_SlS2b2为实部、Cld2+SlS2bl+SlC2b2为虚部的第五复信号数据,并生 成以Clbl-SlC2dl_SlS2d2为实部、Clb2_SlC2d2+SlS2dl为虚部的第四复信号数据; 第二更新与输出模块,用于用所述第五复信号数据更新所述第三复信号数据,将所述 第四复信号数据输出至后续的边界处理单元或者内部处理单元; 其中,h、b2分别指第二复信号数据的实部和虚部,(^、办分别指第三复信号数据的实部 和虚部。9. 根据权利要求7的信号抗干扰处理装置,其特征在于,所述内部处理单元包括: 第二处理模块,用于在根据C2、S2确定的旋转角度为正旋转角度,通过C2、-S2对bl、b2进 行第一级CORDIC旋转运算,得到、C2b2-s2b,通过C 2、-S2对d2、Cl1进行第一级CORDIC旋 转运算,得到C2d2+S2di、C2di_S2d2,通过Cl、-Si对di、C2bi+S2b2进行第二级CORDIC旋转运算,得 至丨Jcldl+Sl(C2bl+S2b2),通过Cl、-Sl对d2、C2b2-S2bl进行第二级⑶RDIC旋转运算,得到Cld2+Sl (C2b2-S2bl),通过Cl、-Sl对C2dl-S2d2、bl进行第二级⑶RDIC旋转运算,得到Clbl-Sl(C2dl-S2d2),通过C1、-S1 对C2d2+S2dl、b2进行第二级CORDIC旋转运算,得至l」Clb2_Sl(C2d2+S2dl),生成 以Cldl+Sl(C2bl+S2b2)为实部、Cld2+Sl(C2b2_S2bl)为虚部的第五复信号数据,并生成以Clbl-Sl (C2dl_S2d2)为实部、Clb2_Sl(C2d2+S2dl)为虚部的第四复信号数据,第二更新与输出模块,用 于用所述第五复信号数据更新所述第三复信号数据,将所述第四复信号数据输出至后续的 边界处理单元或者内部处理单元; 其中,h、b2分别指第二复信号数据的实部和虚部,(^、办分别指第三复信号数据的实部 和虚部。10. 根据权利要求7的信号抗干扰处理装置,其特征在于,还包括: 权值结算模块,用于根据所述CORDIC旋转阵的处理结果进行配置权值的计算; 权值配置模块,用于向数据传输通道配置所计算出的配置权值,获得干扰抑制的结果 输出至终端进行解析。
【文档编号】G06F17/16GK105893334SQ201610188383
【公开日】2016年8月24日
【申请日】2016年3月28日
【发明人】叶韬成, 潘未庄, 牟传坤, 夏效禹
【申请人】广州海格通信集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1