单位文秘网 2022-02-20 08:19:53 点击: 次
摘要:下一代通信协议3GPP-LTE可以带来更大的数据带宽,更小的数据误码率,但随之而来的是硬件计算量的极大增加。本文通过建立基于3GPP-LTE通信协议的基带系统仿真模型,分析了3GPP-LTE协议的运算特点,最后提出了一种更高效的系统解决方案。
关键词:MIMO;OFDM;LTE基带系统仿真;计算需求分析
1引言
LTE是3GPP组织在“移动通信宽带化”趋势下,为了应对WiMAX等移动宽带无线接入技术的市场挑战,在十几年超3G(B3G)研究的技术储备基础上研发出的“准4G”技术。LTE在空中接口方面采用了正交频分多址(OFDMA)替代长期使用的码分多址(CDMA)作为多址技术,并大量采用了多输入多输出(MIMO)技术提高数据率和系统性能。
OFDM技术可以很好地克服无线信道的频率选择衰落,MIMO系统可以很容易获得无线信道的空间分集增益和实现无线信道的容量增益。因此MIMO-OFDM技术被认为是下一代高吞吐率和高带宽利用率的无线通信协议的核心技术。
软件无线电(SDR),是用现代化软件来操纵、控制传统“纯硬件电路”的无线通信。基本思想就是将宽带模数变换器(A/D)及数模变换器(D/A)尽可能地靠近射频天线,建立一个具有“A/D-DSP-D/A”模型的通用的、开放的硬件平台,在硬件平台上尽量利用软件技术来实现无线电的各种功能模块。由于软件无线电(SDR)具有更好的适应性,更小的开发风险,同时配合数字信号处理器(DSP)技术也弥补了廉价RF(RadioFrequency)所造成的不足。近年来,通信中的大量数据处理都是通过SDR的方式进行的。
由于3GPP-LTE协议中大量使用了OFDM和MIMO技术,协议所要求的基带处理的运算能力较以往有了极大的提升,这对现有DSP的数据处理能力提出了极大挑战。为了进一步考察LTE协议对运算量的需求,我们设计了一个满足3GPP-LTE协议[1]规范的C语言MIMO-OFDM基带测试程序,以TMS320C6400处理器[2]为测试平台,分析了3GPP-LTE协议中MIMO-OFDM核心算法的计算复杂性、并行性特征以及核心运算。在文章最后指出了现有运算平台的不足,并提出了一种更高效的运算平台体系结构。
23GPP-LTE协议规定的
系统收发流程
本章所研究的3GPP-LTE协议基带处理,采用4×2的MIMO-OFDM系统模型。系统框图如图1所示。
本文采用的3GPP-LTE协议MIMO-OFDM系统的基本参数如表1所示。
3各个模块主要运算分析
3.1 码块分块
首先对得到的待发送数据整体进行加CRC操作,之后进行码块划分,最后对划分好的各个码块分别加CRC。码块划分根据协议ETSI TS136.212中的规定,计算出两种码块的长度和数量,再将数据填入相应位置。从MAC层传来的数据,经过本步骤之后被分割为长短不一的若干码块,以便后续模块对每个码块进行编码。
3.2 加CRC与CRC校验
加CRC运算在原始数据的尾部增加一段长度的校验比特,用于接收端对收到的数据进行正确性的判断。加CRC运算为:crc(x)=x mod G,G为产生CRC校验所用的生成多项式,mod为取余数操作。得到的余数接在原始数据的尾部作为校验码。
CRC校验对接收到的数据进行正确性的判断。CRC校验所采用的算法和加CRC运算相同。check(x’)=x’ mod G,若得到的余数不为0则表明传输过程中产生了错误。(当余数为0时并不能确信传输过程的正确,详情可以参阅相关资料)。
3.3 信道编码与解码
3GPP-LTE协议中规定传输信道采用咬尾卷积码和Turbo码。本文中采用了更常用的turbo编码,码率为1/3。编码的移位寄存器配置如图3:
Turbo码内交织的作用是将输入的比特按照一定的方式打乱顺序,输出比特序号out(i)和输入比特序号i之间的关系如下:
out(i)=(f1i+f2i2)mod K
其中f1,f2取决与K,通过查表得到。
Turbo码最原始的译码算法是对接收到的信道似然比进行计算,所进行的最主要运算为
aEb ≡1n(ea+eb)=max(a,b)+1n(1+e-|a -b |)
本仿真中所采用的Max-Log-MAP算法对其进行简化,对数据在对数域操作。将上式简化为:
aEb ≡1n(ea+eb)
=max(a,b)+1n(1+e-|a -b |)aEb≈max(a,b)
3.4 速率匹配与解速率匹配
本步骤是将信道编码产生的3路码流重新交织,筛选成一路码流的过程。
对于d和d码流采用下列操作:在起始位置加入伪比特
对于d码流采用下列操作:
在起始位置加入伪比特,使得总比特数为32的整数倍;将码流按行顺序的写入一个32列的矩阵中;矩阵行数为R,原数据为y0...yR*32-1,输出数据v=yπ(k),且有:
π(k)=(P()+32×(k mod R)+1)
mod(32×R)
其中P为一个{0,…,31}到{0,…,31}的一一映射。
令G表示传输块比特总数。令G "=G /(NLQm),其中对于QPSK,Qm=2;传输块映射到1个传输层,NL=1。令γ=G " mod C,C为码块数目。
如果r≤C-γ-1,令E =NLQm [G "/C ];否则,E =NLQm [G "/C ]。
令k0=R(2)rvidx +2,
令k=0以及j=0,当k
ek =w(k+j)mod 32
k =k +1
j =j +1
此时,之前插入的所以伪比特全部被去除并能根据高层信令的通知调整传输的速率。
解速率匹配执行的是上述过程的反过程,解速率匹配并不一定能完全的恢复出速率匹配时删除的一些有效比特,这些丢失的信息需要在信道解码时来修复。
3.5 加扰与解扰
本步骤是将信道编码产生的3路码流重新交织,筛选成一路码流的过程。
加扰的作用是进一步加大比特序列的随机性。若传输的比特块为:b(0,...,b(Mbit-1)),则使用加扰序列按照下述方式进行加扰:(i)=(b(i)+c(i))mod 2,扰码序列c(i)的生成方式如下:
c(i)=(x1(i +1600)+x2(i +1600))mod 2
x1(i +31)=(x1(i +3)+x1(i))mod 2
x2(i +31)=(x2(i +3)+x2(i +2)
+x2(i +1)+x2(i))mod 2
x1(0)=1,x1(i)=0,i =1,2,...,30
第二个m系列的初始化表示为c=∑x(i)2,数值可根据具体应用确定。
加扰是做的按位异或操作,故解扰时只需用相同的序列再对应的做一次按位异或操作,即可恢复初原始比特。
3.6 调制与解调
本步骤是将信道编码产生的3路码流重新交织,筛选成一路码流的过程。
调制是指将比特序列变换到复值符号序列,根据调制方法不同由n个比特变换为1个复值符号。根据信道的不同LTE协议中所使用的调制方式包括QPSK、16QAM、64QAM。本仿真采用了QPSK的调制方式。对应关系如下:
解调是调制的逆过程,将复值符号对应到比特序列。
3.7 MIMO编码
MIMO编码将待发送的数据按照发送的间隔分配到发送的天线上。本仿真所采用的是使用STBC编码的4天线发射,2天线接收系统。编码形式如下:
3.8 OFDM调制与解调
经过MIMO编码后的复值数据,通过串并转换后可以视为频域信号,指示某一频率正弦波的幅值和相位。将这些调制符合映射到M个子载波上,并通过反快速傅里叶变换(IFFT)将这M个并行子载波上的频域信号转换到时域,IFFT输出的OFDM符号为有N个采样点的时域信号(N为IFFT长度,N≥M),也即M个子载波上时域信号的合并波形。在将此时域信号调制到载波上之前,还要在每个OFDM符号之前插入一个循环前缀(Cyclic Prefix,CP),以在多径衰落环境下保持子载波之间的正交性。插入CP就是将OFDM符号结尾处的若干采样点复制到此OFDM符号之前,CP长度必须长于主要多径分量的时延扩展。最后经过串并转换将多个子载波的时域信号进行叠加,形成OFDM发送信号。
OFDM解调执行的是上述的反过程,得到了时域信号的采样值后。先去除CP,再进行FFT之后得到了一组复值数据供后续模块使用。
3.9 信道估计
OFDM系统用矩阵形式可以表示为:
y =Xh +w
y为接收信号矢量;X为对角矩阵,传送的频域信号向量x为其对角线上的元素;h为信道频率响应向量;w为独立分布的零均值白高斯噪声。信道估计的任务是在已知发送信号的情况下,根据对接收信号的分析,选择合适的算法得到信道的冲击响应。
信道估计的典型算法有:最小平方(LS)算法,线性最小均方误差(LMMSE)算法,基于离散傅里叶变换(DFT)的信道估计算法,基于奇异值分解(SVD)的信道估计算法和最大似然信道估计算法。本文采用了运算较为简单的LS算法。
LS算法的目标是:
=arg y-X
由正交性原理可得LS估计:
=X-1y
3.10 MIMO均衡
对于多天线系统,有如下的传递函数:
rr=hhhhhhhhssss+
rr=hhhhhhhhs-ss+
rrrr=hh h hhh h hh-h h hh-h h hssss+
其中,r i,j表示第i个接收天线第j个时刻接收到的子载波,hij表示第j个天线到第i个天线的信道的频率响应,si为第i个天线上发送的子载波,W为加性高斯白噪声。
故有:
ssss=hh h hhh h hh-h h hh-h h hrrrr
4系统仿真测评结果
4.1 误码率分析
每次发送5000个比特数据,经过了多径数量为6,最大延迟为13的多径衰落信道以及10db的高斯白噪声后得到接收数据。经多次试验得到本系统误比特率为0.06%,符合通信协议要求。
4.2 运算量分析
经过前文分析可以发现,在系统仿真的过程中只存在两种数据类型:一种是比特型数据,用一位表示0或者1;另一种是符号型数据,是指调制后在星座图上所产出的复数数据,每个星座图上的点对应于一个符符号,使用一个复数来表示,用16位表示实部以及用16位表示虚部。在turbo译码中还使用到一种叫做软判决的数据,用8位表示一个被噪声干扰过的0或者1,在这里也归为比特型数据。
由于仿真所使用的DSP平台中缺乏对位操作的支持,故对于比特类型的数据在程序中只能使用16位的整型数表示,这会产生极大的性能浪费。将上表中的比特类型和符号类型分别统计才可以得到较可信的结果。
从表6中可以看出,由于要对软判决做大量的加比选操作,turbo译码在比特型运算中占据主要的运算量。而其他操作的运算量几乎可以忽略。
表7符号型数据的运算量统计。OFDM调制和解调中大量使用的FFT运算,信道估计和MIMO均衡中使用的矩阵相关的运算,占据了绝大部分的运算量。
比特型数据的计算多为协议已经规定的固定算法,而信道估计、MIMO均衡等符号型数据的运算并没有固定或者最优化的算法。复杂的算法有更好的误比特性能,但有更大的计算复杂度,这两者之间的权衡需要根据具体的应用背景来确定。本文中采用了运算最为简单的LS信道估计算法,和基于矩阵求逆的简单MIMO均衡算法。
4.1 特征运算分析
从上表中我们可以发现,比特数据的运算均为加、乘、除、异或等基本运算,以及少量的条件分支操作。而且比特型数据多是顺序运算,即后续的计算需要使用之前计算的结果,很难实现数据的并行执行。
符号运算中所有的操作均为复数运算,主要包括了两类运算。一类是以密集的乘加计算为代表的典型信号处理算法,如:FFT、FIR、DFT等算法。另一类是以密集的小矩阵操作为主的算法,包括矩阵乘、矩阵求逆等操作。矩阵的大小与使用的MIMO系统的天线数有关,本文中为4*2。这类操作主要体现在MIMO均衡算法中。符号运算数据之间的相关性很小,适合并行处理。
5分析结果的应用
现有的DSP无法有效的支持位寻址与位操作,因而程序实现时不得不使用字节型数据来表示一个比特,产生了资源的浪费。
根据上文对运算类型的分析,认为该硬件系统需要分为两部分。
首先需要的是一个支持大规模并行处理的DSP核,并且需要在硬件上对复数运算做出支持。并且可以针对矩阵乘法和求逆算法做出,用来处理符号型数据的运算。由于本类运算中的算优化法的多种多样,故针对某一中算法设计高效的专用处理器并不是很好的选择。
其次需要有针比特型数据运算中的turbo译码设计专用处理器。Turbo译码算法运算量占比特型数据的绝大部分,而且无法并行执行,故需要高效且有针对性的硬件加速部件支持,以提高系统性能。
第三,对于除turbo以外的比特型数据,由于运算量较小,且算法固定,可以单独设计小型ASIC处理器或使用FPGA等可编程器件实现高效的位寻址和位运算功能。
使用上述三条中提到的处理器协同工作,可以使各个器件更好的发挥出各自的效用。
6小结
本文使用仿真程序分析了3GPP-LTE通讯协议所规定的信号收发过程,统计了这一过程中各个模块运算量的关系,以及所进行的主要算法。根据分析结果给出了一个实现该系统的较优的硬件解决方案。
参考文献
[1]LTE;Evolved Universal Terrestrial Radio Access (E-UTRA); Multiplexing and channel coding(3GPP TS 36.212 version 8.7.0 Release 8),2009
[2]李方慧 王飞 何佩琨,TMS320C6000系列DSPs原理与应用,电子工业出版社,2003
[3] 沈嘉 索士强等,3GPP长期演进(LTE)技术原理与系统设计,人民邮电出版社,2008
[4] 周恩等,下一代宽带无线通信OFDM与MIMO技术,人民邮电出版社,2008
[5] 肖扬等,MIMO多天线无线通信系统,人民邮电出版社,2009
[6] Johan Eilert, Di Wu and Dake Liu,Real-Time Alamouti STBC Decoding on A Programmable Baseband Processor, Proc. IEEE International Conference on Circuits and Systems for Communications (ICCSC), 2008, Shanghai, China
(责任编辑:单位文秘网) )地址:https://www.kgf8887.com/show-134-100289-1.html
版权声明:
本站由单位文秘网原创策划制作,欢迎订阅或转载,但请注明出处。违者必究。单位文秘网独家运营 版权所有 未经许可不得转载使用