矩阵特征值分解的算法研究与FPGA 实现

2021-08-20 10:28:36黄家俊王建新
电子设计工程 2021年16期

黄家俊,王建新

(南京理工大学电子工程与光电技术学院,江苏南京 210094)

阵列信号处理中的一类典型问题是如何从接收到的多路观测数据中解析出被混叠着的原始信号[1]。常用的阵列信号分离算法有波达方向(Direction of Arrival,DOA)估计[2-4]、盲源分离[5]、快速独立成分分析(Fast Independent Component Analysis,FastICA)[6-9]等。这些算法都需要涉及大量的矩阵运算,而矩阵特征值分解就是其中的关键步骤之一。

常规的特征值分解算法主要针对实对称矩阵,如Jacobi 旋转法、QR 迭代法[10],其中Jacobi 法计算简单、精度高,应用更为广泛。传感器阵列观测到的信号经数字正交下变频后变成I/Q 两路的复信号,其协方差矩阵是一个复Hermitian 矩阵,无法直接应用传统的算法。所以需要通过一定的运算先将复Hermitian 矩阵转化为实对称矩阵。

FPGA 硬件相较于DSP 硬件,运行速度快,并行运算能力强,更适合解决阵列信号处理中的矩阵运算。因此,该文研究阵列信号处理中典型的复Hermitian 矩阵特征值分解问题,在FPGA 中实现矩阵转化和特征值分解的运算。

1 矩阵转化

假设由M个天线组成的天线阵列观测到的信号经正交下变频后得到的复观测数据为x(t),如式(1)所示。

其中,N为x(t)的采样长度。显然矩阵Rx是一个M×M阶的复Hermitian 矩阵。

复Hermitian 矩阵向实对称矩阵的转化有两种处理方法。第一种转化方法是将M×M阶的复Hermitian 矩阵转换为2M×2M阶的实对称矩阵[11],首先用实对称矩阵Rr和反对称实矩阵Ri作为实部和虚部来表示矩阵Rx。假设矩阵Rx的特征值σ对应的特征向量实部为u、虚部为v,可以得到下式:

易证式(3)中的分块矩阵是实对称的。……

登录APP查看全文