APP下载

基于CVXGEN的实时嵌入式波束形成实验

2017-11-23万建伟李小雨

电气电子教学学报 2017年5期
关键词:工具箱波束嵌入式

陈 勇,王 芳, 万建伟, 许 可, 李小雨

(1. 江西师范大学 物理与通信电子学院, 江西 南昌 330022;2. 国防科学技术大学 电子科学与工程学院, 湖南 长沙 410073)

基于CVXGEN的实时嵌入式波束形成实验

陈 勇1,2,王 芳1, 万建伟2, 许 可2, 李小雨1

(1. 江西师范大学 物理与通信电子学院, 江西 南昌 330022;2. 国防科学技术大学 电子科学与工程学院, 湖南 长沙 410073)

实时嵌入式自适应波束形成在现代无线通信系统中具有广泛应用,也是“阵列信号处理”课程教学的难点和重点内容。本文以最小方差无失真响应(MVDR)波束形成器等为例,详细介绍了基于凸优化工具箱CVXGEN的实时嵌入式自适应波束形成器设计过程,并分析了其计算时间和波束形成性能。实践表明,将CVXGEN引入到实验教学中,可使实时嵌入式自适应波束形成器的设计过程更加直观和易于理解。

实时嵌入式系统;自适应波束形成;CVXGEN工具箱

0 引言

实时嵌入式自适应波束形成技术在现代移动通信系统中占据重要地位,也是电子信息类高年级本科生、研究生在“阵列信号处理”课程中需要学习的重要内容[1]。自适应波束形成理论涉及矩阵论、最优化理论、随机信号处理等多方面的内容,给学生的学习理解带来了一定的困难[2-3]。针对该问题,我们在文献[4]中介绍了一种规则化编程凸优化工具箱CVX,使学生仅需掌握少数命令即可实现复杂波束形成问题的求解。但是,借助CVX工具箱仅能实现波束形成算法的理论分析与验证,所得到的仿真程序与实时嵌入式程序还存在很大差距。

实现嵌入式自适应波束形成器的关键就是编写C语言程序求解波束形成最优化问题。为了使实时嵌入式自适应波束形成器的设计过程更加直观和易于理解,我们在实验教学中引入了美国斯坦福大学Mattingley等学者开发的实时嵌入式凸优化工具箱CVXGEN[5]。该工具箱针对特定优化问题自动生成源代码,并在编译后得到自定义凸优化求解器,其计算时间远远低于通用凸优化求解器,可以实现嵌入式自适应波束形成的实时处理要求。教学实践表明:采用CVXGEN工具箱后,学生可避免直接求解复杂的优化问题,而是将主要精力放在自适应波束形成的算法设计上,从而使得整个实验过程更加清晰直观和易于理解。

1 实验设计与实现

1.1实验内容

假设使用标准线列阵,其中阵元个数为M,各阵元接收信号为xi(n),i=1,2,…M。在空间中,远场信号源以方向θs入射到接收阵列,而远场干扰源以方向θi入射到阵列。假设阵列接收噪声为高斯白噪声,且期望信号、干扰信号以及噪声互不相关。实验中需要设计基于DSP芯片的嵌入式自适应波束形成器,即计算合适的波束形成权系数wi,i=1,2,…,M,使得在波束形成器的输出信号y(n)中尽可能地保留期望信号,而同时极大地抑制干扰信号及噪声。波束形成器的原理图如图1所示。

图1 波束形成器原理示意图

1.2原理分析

(1)

其中,w=[w1,w2,…,wM]T为波束形成器权系数向量。同时,还可以计算出期望信号通过波束形成器后的输出功率为

(2)

(3)

实时嵌入式波束形成的难点就是如何在DSP芯片上快速实时地求解如式(3)中的最优化问题。常规凸优化问题与实时嵌入式凸优化问题的区别如图2所示。常规凸优化问题的优化变量个数通常在1000以上,运算时间需要若干秒甚至若干小时;而实时嵌入式凸优化问题的优化变量个数较少,其运算时间一般在毫秒甚至微秒量级。

图2 实时嵌入式凸优化问题与常规凸优化问题的区别

凸优化问题的嵌入式程序设计对工科学生而言难度较大,为此,本文将CVXGEN工具箱引入到嵌入式波束形成的教学实践中。基于CVX的通用凸优化求解器求解过程和基于CVXGEN的嵌入式凸优化求解器求解过程分别如图3(a)和图3(b)所示。由图3可见,CVXGEN能够自动生成C语言源代码,用户在微机或DSP运行环境下编译后即可得到自定义的凸优化求解器。

(a) 基于CVX的通用凸优化求解器

(b) 基于CVXGEN的嵌入式凸优化求解器

(4)

于是,式(3)中的最优化问题可等价地表述为

(5)

其次,定义新的实数向量和实数矩阵,代替原来的权系数向量、导向向量以及样本协方差矩阵,即:

z=[Re{w}T,Im{w}T]T

(6)

b=[Re{a(θs)}T,Im{a(θs)}T]T

(7)

c=[Im{a(θs)}T,-Re{a(θs)}T]T

(8)

(9)

(10)

其中,Re{·}表示复数实部, Im{·}表示复数虚部。最后,将式(6)~(10)应用到式(5),便得到等价的实凸优化问题为

(11)

图4(a)给出了式(10)中优化问题的CVXGEN求解过程。对其中各行的简单解释如下:第1~3行确定优化问题的维数;第4~8行定义优化问题所使用到的参数,包括标量、向量及矩阵等;第9~11行定义优化变量;第12~17行描述优化问题的目标函数及约束条件。从图4(a)可以看到,在CVXGEN中对凸优化问题的描述非常直观,因此用户很容易对目标函数和约束条件进行修改。例如,在式(11)的基础上将权值向量范数惩罚项增加到目标函数中,可以得到对角加载波束形成器(LSMI),即:

(12)

其中,参数μ为用户指定的对角加载量。与对角加载波束形成器对应的CVXGEN程序如图4(b)所示。

进一步地,还可以在式(11)的基础上增加约束条件,例如:增加对干扰方向上的零点约束即:wHa(θi)≤δ,其中δ为较小值,θi为干扰信号的波达方向,此时得到的自适应波束形成器一般称为线性约束最小方差波束形成器(LCMV),其相应的最优化问题可描述为

(13)

其中,

bi=[Re{a(θi)}T, Im{a(θi)}T]T

(14)

ci=[Im{a(θi)}T,- Re{a(θi)}T]T

(15)

(a) MVDR (b) LSMI图4 嵌入式波束形成器的CVXGEN实现过程

依据式(13),可容易地写出线性约束最小方差波束形成器对应的CVXGEN程序。

CVXGEN自动生成的源程序文件包括:ldl.c,matrix_support.c,solver.c,testsolver.c,util.c以及solver.h。将上述源程序文件逐个添加至DSP工程项目,编写必要的命令控制文件,并添加DSP运行支持库,成功编译后即可得到运行于DSP芯片之上的实时嵌入式波束形成器。

1.3注意事项

(1)在源程序文件testsolver.c中,Q(n,n)、b(n)、c(n)等参数为CVXGEN随机产生,仅用来验证程序的正确性。在本实验中,应根据实际情况对上述参数重新赋值。

(2)程序执行成功后,波束形成器权系数向量保存在结构体vars中。将该权系数向量载入Matlab,可画出此实时嵌入式波束形成器的波束图,并初步确定波束形成器是否达到设计要求。

(3)在实时嵌入式波束形成器设计实验中,应充分利用CVXGEN可灵活修改目标函数或约束条件的特点,引导学生设计不同的波束形成算法,并比较和分析不同波束形成器的特点。

1.4实验结果

假设图1中阵元数M=10,远场信号源波达方向θs=3°,远场干扰源波达方向θi=30°,阵列可用快拍数为100,使用的波束形成算法包括:式(11)中的最小方差无失真响应波束形成器(MVDR),式(12)中的对角加载波束形成器(LSMI),以及式(13)中的线性约束最小方差波束形成器(LCMV)。

首先,对比和分析实时嵌入式波束形成器和常规波束形成器的运行求解时间。在配置为Core i7,8G RAM的计算机上运行基于CVX的通用凸优化求解器和基于CVXGEN的嵌入式凸优化求解器,得到MVDR、LSMI以及LCMV三种波束形成器的运行求解时间如图5所示。由图5可见,相对于常规波束形成器,基于CVXGEN的嵌入式波束形成器的求解速度提高了约1000倍以上。

图5 运行求解时间对比

其次,分析和比较上述三种实时嵌入式波束形成器的波束形成性能。图6(a)为根据DSP处理器计算结果画出的MVDR、LSMI以及LCMV实时嵌入式波束形成器的波束图,图6(b)为图6(a)的局部放大图。由图6可见,相对于MVDR波束形成器,LSMI波束形成器具有更低的旁瓣,而LCMV波束形成器在干扰方向具有更低的零陷,这与之前介绍的波束形成器设计过程相吻合。

2 结语

本文详细讨论了基于CVXGEN的实时嵌入式波束形成器的设计过程、注意事项以及实验结果。利用凸优化工具箱CVXGEN后,嵌入式波束形成器的设计过程变得简洁高效,学生可更加专注于波束形成算法的设计开发,因此该方法取得了良好的实验教学效果。

(a) 整体波束图

(b)局部放大波束图图6 实时嵌入式波束形成器的波束图

[1] Harry L. Van Trees著. 汤俊等译. 最优阵列处理技术[M]. 北京: 清华大学出版社, 2008.

[2] 鄢社锋, 马远良. 传感器阵列波束优化设计及应用[M]. 北京: 科学出版社, 2009.

[3] A. B. Gershman, N. D. Sidiropoulos, S. Shahbazpanahi等. Convex Optimization Based Beamforming[J]. IEEE Signal Processing Magazine, 27:62-75, 2010.

[4] 王芳, 陈勇, 叶志清, 万建伟. 基于CVX工具箱的自适应波束形成实验[J]. 南京: 电气电子教学学报, 2016, 38(2): 136-139.

[5] J. Mattingley, S. Boyd. Real-Time Convex Optimization in Signal Processing[J]. IEEE Signal Processing Magazine, 27:50-61, 2010.

TeachingExperimentofReal-TimeEmbeddedBeamformerBasedonCVXGENToolbox

CHENYong1,2,WANGFang1,WANJian-wei2,XUKe2,LIXiao-yu1

(1.CollegeofPhysicsandCommunicationElectronics,JiangxiNormalUniversity,Nanchang330022,China; 2.CollegeofElectronicScienceandEngineering,NationalUniversityofDefenseTechnology,Changsha410073,China)

Real-time embedded adaptive beamforming has been widely used in modern wireless communication systems, and meanwhile, it may also be one of the difficult and important contents in the teaching of Array Signal Processing course. This paper takes the minimum variance distortionless response (MVDR) beamformer and other adaptive beamformers as examples, and introduces the application of the convex optimization toolbox of CVXGEN in the design of real-time embedded adaptive beamformers. The calculation time and performance of the real-time embedded beamformers are analyzed. It is indicated that the design process of real-time embedded adaptive beamformer can be more intuitively and easily understood by introducing the CVXGEN toolbox into practice teaching.

real-time embedded system; adaptive beamforming; CVXGEN toolbox

2016-10-25;

2016-11-23

国家自然科学基金( 61601209 );国防科技大学重大基础研究课题(ZDYYJCYJ20140701);江西师范大学教学研究课题( 2013041, 2014054)

陈 勇(1981- ),男,博士,讲师,主要从事阵列信号处理方面的教学和研究,E-mail: yongchen@ jxnu.edu.cn

G642

A

1008-0686(2017)05-0130-04

猜你喜欢

工具箱波束嵌入式
超波束技术在岸基光纤阵中的应用
毫米波大规模阵列天线波束扫描研究*
搭建基于Qt的嵌入式开发平台
基于MATLAB优化工具箱优化西洋参总皂苷提取工艺
Helix阵匹配场三维波束形成
嵌入式软PLC在电镀生产流程控制系统中的应用
机械加工机床工具箱的优化设计
Matlab曲线拟合工具箱在地基沉降预测模型中的应用
基于非正交变换的局域波束空时自适应处理
Altera加入嵌入式视觉联盟