黄玉斌,李敬超,傅小玲
通信信号的信噪比是反映通信信号质量信息的一个重要指标。当前,在通信信号处理的研究领域,功能强大的信号处理算法在运行过程中都需要将信噪比信息作为必不可少的先验知识。
通信中使用的纠错编码系统如Turbo码、LDPC码等,其基于迭代的译码处理都需要利用接收信号的信噪比计算接收比特的软先验信息。因此,在译码过程中,通常需要实时在线的估计信噪比。在通信信号解调过程中,可利用类似Turbo码的思想,在均衡器与解码器之间迭代交换似然比软信息。这种名为Turbo均衡或Turbo同步的方式,在迭代处理过程中必须利用接收信号的信噪比信息计算先验似然率。在实际通信系统中,接收的信号信噪比都是未知的。要获得信噪比信息,必须从信号样本中估计信噪比。
信噪比信息对于自适应(AMC)系统非常重要。精确估计信噪比对保证通信系统逼近理想性能具有重要意义。在无线宽带传输系统中,自适应码率调整系统可以根据实时信噪比估计值来动态选择最合适的前向纠错编码和译码码率。精确估计信噪比值,可保证自适应无线宽带通信系统能够自适应地调整通信速率、调制方式和编码方式,从而最大限度地保证通信畅通和拥有较高的信道利用率[1]。
BSC9132是freescale公司推出的包含了Power Architechture e500内核和DSP StarCore SC3850内核的高性能、低功耗的高密度集成器件,可以实现无线收发传输信号基带处理中的所有功能[2]。其中,SC3850内核是一款拥有创新性架构的DSP,主要针对DSP应用较为广泛的市场领域,包括有线无线基础设施、用户通信及多媒体信息包传输等。它灵活的DSP核心拥有高性能、低功耗的特点,支持高效率的汇编开发语言,并提供高功能密度的代码指令,适用于高密度计算应用领域。图1为SC3580的主要架构框图[3]。
图1 DSP SC3850内核框架
接收端收到的数据都是信号与噪声共存。信号用于承载有用信息;噪声叠加在信号上,使信号退化,降低通信质量,产生于各个噪声源。信噪比一般以dB做单位,其线性值表示为:
算法是为最后的实现应用服务。对于实际的通信系统来说,良好的信噪比估计算法,不仅要能够准确反映信道质量,还应该是复杂度低、易于实现的算法。所以,有必要研究在不同类型信道中,如何高效、快速、准确地估计信噪比SNR。
目前,信噪比估计算法大体上可以分为两类。
基于接收信号的盲估计(NDA)算法,指没有辅助数据的情况下,在接收端对接收信号进行相应处理得出信噪比估计值的方法,主要有二阶矩、四阶矩等。虽然盲估计有效数据传输率高,但算法复杂、收敛速度较慢,需要利用接收的大量信息数据得出估计结果,很难实时跟踪快速衰落信道[4]。
基于导频的数据辅助(DA)算法。在发送数据中插入导频信号,在接收端利用已知的导频符号进行相关运算得到估计的信噪比。这样不会给通信系统带来额外开销,且估计性能优于盲估计。这类算法常用的有MSE最小均方误差算法、LS最小二乘估计算法、ML最大似然估计算法和SNV(平方噪声方差)算法等。
均方误差MSE算法是一种基于导频或数据判决的估计算法,是根据均方误差的定义提出的。
定义噪声功率为:
则SNR估计值的计算公式为:
可以看出,这种估计方法的性能好坏依赖于信道估计的算法。如果式(3)分母为零,将无法估计信噪比。因此,这种方法具有一定的局限性。
LS算法是使式(4)表示的均方误差最小:
ε2=代表集合平均,可以得到式(4)最小等效于式(5)结果最小:
定义互相关函数为:
为了使式(5)最小,求得Hm,k的唯一解为:
此时信噪比估计可以表示为:
最终,得到最终估计式为[5]:
最大似然估计就将接收信号采样值的同相和正交分量的联合概率密度函数取自然对数作为似然函数,然后对信号功率和噪声功率求偏导,得到使似然函数最大的信号功率和噪声功率值,最后两者相除得到信噪比最大似然估计[6]。
因为Xm,k是已知的导频数据,所以称该算法为ML-TXDA。若对N个接收数据进行点数Nss的取样,则得到的表达式为:
对式(10)的估计值进行修正减小偏差,得到:
当Nss=1时,即代表没有过采样时,上述算法就是SNV算法。SNV算法是ML算法的一个特例。
在高速无线宽带信号传输中,SNR计算只是下行通道的多个基带运算模块中的一个,所以SNR计算不能消耗过多的下行处理时间。因此,基于BSC9132平台进行SNR计算,需采用一个易于工程实现的算法,并对算法进行优化,采用高效的汇编语言实现,从而最大限度地节省计算处理时间。
MER,调制误差比,是信号矢量幅度的有效值与误差幅度的有效值比值,定义式为[7]:
其中,Ij、Qj为理想位置的数据点;∆Ij、∆Qj为由损伤引起的接收数据点和理想位置数据点的误差;N是在数据抽样中捕获的点数。MER原理如图2所示。
图2 MER原理
MER可以用于信噪比测量计算,不仅包括高斯噪声,而且包括接收星座图上所有其他不可校正的损伤。如果接收信号中出现的有效损伤仅仅是高斯噪声,那么MER等于SNR。9132平台接收信号为解调完成信号,MER适用于信噪比计算。
BSC9132平台支持的汇编指令集针对优化代码密度和性能,一般为16位操作指令。内核包含了6个执行单元,可以每个时钟周期执行2个AGU指令和4个DALU指令。它支持可变长度指令操作(VLES),即1个时钟周期可以同时执行小于6的任意长度的并行操作指令[8]。
由式(12)所示,MER计算包括了平方、开方及对数等较为复杂的数学计算,再加上累加计算,如果用汇编实现原数学公式计算,不仅会因编程难度大而造成代码冗长和可读性差,还会极大增加计算处理时间,从而对后期代码的优化造成极大压力。
由于汇编指令集支持乘法、加法及乘累加较好,为减少编程冗长性,应该减少或避开原公式中的对数和开方运算,将原公式变为:
公式右侧,通过MER取值[0∶0.1∶39 dB]计算得到查找表。将公式左侧计算所得值与查找表值作比较,选择最接近值,得到相应MER值的索引号。比较选择的汇编代码,实现需要通过用比较指令来判断标志位的变化,再选择合适的跳转指令定位最接近值的索引。算法汇编实现具体流程如图3所示。
比较查找表算法汇编实现所得结果与公式计算MATLAB仿真结果,所得曲线如图4所示。由仿真曲线可见,工程查找表算法所得结果与原公式计算所得结果基本一致。
图4 查找表算法汇编实现结果与公式计算MATLAB仿真结果的比较结果
鉴于信噪比SNR对自适应(AMC)系统的重要性,本文研究适用于BSC9132平台的宽带信号信噪比算法。通过了解BSC9132平台特性和各常用信噪比算法,选择合适的算法用于工程实现,并描述了算法具体实现流程。仿真结果表明,算法工程实现计算结果非常接近于理论计算结果,可为以DSP平台开发宽带信号传输系统如何实现信噪比估计提供借鉴。
[1] 许华,王爱粉,杨晓宇.常规数字通信信号信噪比估计综述[J].信号处理,2013,29(06):724-733.XU Hua,WANG Ai-fen,YANG Xiao-yu.Survey of the SNR Estimation of Conventional Digital Communication Signals[J].Journal of Signal Processing,2013,29(06):724-733.
[2] Freescale Semiconductor Inc.QorIQ Qonverge BSC9132 Multicore Baseband Processor Reference Manual[Z].Document Number BSC9132RM Rev.0,2014.
[3] Freescale Semiconductor Inc.StarCore Dsp SC3850 Core Reference Manual[Z].SC3850CRM Rev.C.,2009.
[4] 李晋,华惊宇,尤肖虎.一种移动通信中的低复杂度盲信噪比估计算法[J].电子与信息学报,2006,28(06):1054-1058.LI Jin,HUA Jing-yu,YOU Xiao-hu.A Low Complexity Blind SNR Estimator in Mobile Communication[J].Journal of Electronics & Information Technolo gy,2006,28(06):1054-1058.
[5] Mosquera C,Lopez-valcarce R,Alvarez-diaz M.SNR Estimation for Multilevel Constellations Using Higher-Order Moments[J].IEEE Transactions on Signal Processi ng,2010,58(03):1515-1526.
[6] 张金成,彭华,赵国庆.信噪比估计算法研究[J].信息工程大学学报,2011,12(05):536-543.ZHANG Jin-cheng,PENG Hua,ZHAO Guo-qing.Study on SNR Estimation Algorithm[J].Journal of Information Engineering University,2011,12(05):536-543.
[7] Affes S,Bellili F,Stephenne A.Moment-based SNR Estimation over Linearly-modulated Wireless SIMO Channels[J].IEEE Transactions on Wireless Communicat ions,2010,9(02):714-722.
[8] Freescale Semiconductor Inc.CodeWarrior Development Studio for StarCore SC3850 DSP Architectures Assembler User Guide[Z].2014-06-17.