支持LTE的设备(如手机和平板电脑)现在无处不在,LTE正变得与原始蜂窝市场以外的组织相关。LTE提供了比3G技术更高的传输速度。然而,这种改进以开发和实现复杂性为代价,部分原因是LTE物理层使用了先进的通信技术,如多输入多输出(MIMO)和turbo编码器。
LTE信号的解调需要深入了解LTE信号的结构,以及从原始信号中提取信息的高级算法。标准、算法和概念的复杂性使得LTE产品的开发非常具有挑战性。分析捕捉到的LTE信号、验证LTE系统的内部实现以及生成LTE信号都是需要相当努力和仔细验证的任务,而且它们得益于一致的设计流程和环境。
本文将解释LTE信号是如何构造的,以及如何从信号中检索信息。然后,它提出了一个工作流,使用LTE系统工具箱™获取和解调LTE下行信号-从初始同步到提取LTE参数和数据。
LTE基带信号特性
LTE的设计目的是有效地传输数据包的信息,低延迟(几毫秒)。LTE基于OFDM调制,要求使用MIMO技术。LTE信号以10毫秒的帧组织。
LTE帧由10个1ms的子帧组成(图1)。
每个子帧由14个OFDM符号组成。子帧的结构通常表示为时间和频率的二维资源网格。图2显示了单个子帧的资源网格,该子帧由14个OFDM符号组成。网格包括72到1200个子载波。网格上的每个单元被称为a资源元素.一个资源块是一组12×7的资源元素。
当手机等LTE设备打开时,首先要检测LTE网络并连接到LTE网络。LTE可部署的带宽范围为1.4MHz ~ 20MHz(对应上文提到的72 ~ 1200个子运营商)。因此,LTE标准将手机连接到网络所需的所有信息放在最窄的带宽内,即在中间的72个子载波内。这些信息包括:
- 主要同步信号和次要同步信号(PSS和SSS),这有助于确定帧时间和单元识别。这些信号每五帧出现一次。
- 广播通道(BCH),承载主信息块(MIB)。MIB包含实际的cell带宽(1.4MHz ~ 20 MHZ)等信息。BCH每10个子帧发生一次。
图3显示了PSS、SSS和BCH在一帧的子帧0中的位置。
如前所述,每一个子帧包含14个OFDM符号。前几个符号表示控制区域。它们是为控制信息保留的,有效载荷数据进入剩下的符号。控制符号的数量因子帧而异,并由物理控制格式指示通道(PCFICH)发出信号。
该网络包括三个附加通道:
- 物理混合指示符信道(PHICH),携带对先前发送到基站的数据的确认
- 物理下行链路控制信道(PDCCH),它携带诸如电网的哪一部分被分配给特定的用户以及使用哪一种调制和编码方案等信息
- 物理下行共享通道(PDSCH),承载流量数据
图4显示了具有3MHz带宽的子帧0的不同信道。用白色标记的是小区特定参考信号(CRS),它是用于相干解调的导频符号。
利用LTE系统工具箱在MATLAB中解调LTE信号
在这个例子中,我们将模拟手机打开时会发生什么。一个电话通常必须执行以下任务(图5):
- 在给定的LTE载波频率上获取信号。
- 基于PSS和SSS确定帧同步和小区识别(小区搜索程序)。
- 解码主信息块以获得带宽信息。
对于每一个子帧它需要解码,它必须做以下工作:
- 解码PCFICH以确定控制区域的大小。
- 定位控制信息(PDCCH),以便它能够解码相关数据(PDSCH)。
在这个例子中,我们假设信号已经被获取并存储在一个文件中。
确定帧同步和单元识别
单元格搜索包括两个步骤:
- 使用三个可能的PSS执行运行相关,并在三个相关器中的任何一个中检测峰值。峰值的位置提供具有五个子帧不确定性的帧定时,因为PSS同时存在于子帧0和子帧5中。
- 一旦检测到峰值,对子帧0和5中的31个可能的SSS执行相关,以找到两个SSS的168个可能组合中的一个。
这两个步骤的结果是小区标识号、介于0和3*168-1=503(在我们的示例中为17)之间的数字以及帧定时。
使用lteCellSearch
功能在LTE系统工具箱。lteCellSearch
计算所有与可能的PSS和SSS的关联,并返回单元格ID和帧定时。
%对输入波形执行单元搜索[NCellID, timinggoffset] = lteCellSearch(enb,波形);%同步输入信号,了解帧定时波形=波形(1+定时偏移:结束);
图6显示了处理后的相关结果lteCellSearch
函数确定了输入信号的单元ID。
解码主信息块(确定带宽)
现在我们知道了帧定时和单元识别,我们可以对信号进行OFDM解调,提取OFDM网格值。然后,我们将能够根据基站传输的已知参考信号(CRS)进行信道估计1.
为了完成OFDM调制,我们调用lteOFDMDemodulate
和lteDLChannelEstimate
LTE系统工具箱中的功能:
%执行OFDM解调,包括循环前缀去除rxgrid = lteofdm解调器(enb,波形);%估计中间6个RBs的渠道[ChannelEst, noiseEst] = lteDLChannelEstimate(enb,cec,rxgrid);
图7为OFDM解调后的网格图。信号因传输障碍和噪声而严重受损。
我们现在必须计算MIB映射到的网格位置,解调该信息,解码MIB,并解释二进制字段的内容。
我们可以用四个MATLAB完成所有这些任务®命令:
%在所有接收天线和信道估计中,从第一个%子帧中提取与PBCH对应的资源元素pbchIndices = ltePBCHIndices (enb);[pbchRx, pbchHest] = lteExtractResources(...pbchIndices,rxgrid(:,1:L,:),hest(:,1:L,:);%解码PBCH[bchBits, pbchSymbols, nfmod4, mib, enb.]CellRefP] = ltePBCHDecode (...enb, pbchRx, pbchest, nest);%解析MIB位enb = lteMIB(mib, enb);
与enb相比,包含基站(或eNodeB)参数的结构如下:
nlrb: 50 NCellID: 17 NSubframe: 0 CellRefP: 2 PHICHDuration:“正常”Ng:“一个”NFrame:404
因此,我们知道单元带宽是50个资源块(NDLRB),或10MHz。除了这个值之外,我们还从MIB中获得了更多的信息,包括天线数量(2个)、帧号(404)和PHICH配置(本文未涉及)。
获取系统信息
此时,我们已经确定了一些关键参数:
- 细胞的身份
- 帧定时
- 小区带宽
- 单元天线数
- PHICH配置
然而,在联系基站之前,我们需要更多地了解该小区(包括该小区的运营商是否是我们有合同的运营商!)。这些附加信息包含在各种系统信息块(SIB)中。我们现在将解调系统信息块Type1(SIB1)。
虽然SIB1是在固定时间内传输的,但是携带SIB1的PDSCH的资源分配是动态的。它在PDCCH上携带的相关下行链路控制信息(DCI)消息中表示。
基站使用具有预期接收者特征的无线网络标识符(RNTI)对所有DCI消息进行加密。所有用户都对SIB1感兴趣,它有一个已知的65535的RNTI(称为SI-RNTI或系统信息RNTI)。这使得所有终端(包括未关联的终端)都能够查找和解码SIB1。
解码SIB1控制信息
识别PDCCH非常具有挑战性,因为与BCH不同,PDCCH具有复杂的结构:PDCCH携带可变长度的DCI消息,这些消息可以从PDCCH空间的不同位置开始。
由于这个原因,一旦我们提取了所有与PDCCH相对应的符号,我们必须执行盲搜索,以寻找将由SI-RNTI进行置乱的DCI消息。
LTE系统工具箱包含我们需要的功能,包括对PDCCH空间执行盲搜索的能力。下面的代码显示了我们如何解码PCFICH以确定控制区域的大小,然后提取PDCCH,为SI-RNTI执行PDCCH空间的盲搜索,并解码SIB1。
%解码PCFICHcfiBits=ltePCFICHDecode(enb、pcfichRx、pcfichHest、nest);enb.CFI=lteCFIDecode(cfiBits);%获取CFI%PDCCH解调。PDCCH现在使用%类似的资源提取和解码功能进行解调和解码,这些资源提取和解码功能与BCH和CFI接收中已显示的%类似pdcchIndices = ltePDCCHIndices (enb);%获取PDCCH索引[pdcchRx,pdcchest]=资源(pdcchIndices,rxgrid,hest);%解码PDCCH[dciBits, pdcchSymbols] = ltePDCCHDecode(enb, pdcchRx, pdcchest, nest);% PDCCH盲搜索系统信息(SI)和DCI解码。LTE系统工具箱提供了对PDCCH的完全盲搜索,以找到具有指定RNTI的%任何DCI消息,在本例中是SI-RNTI。pdcch=struct(“RNTI”, 65535);dci = ltePDCCHSearch(enb, pdcch, dciBits);%在pcch中搜索DCI
图8显示了对应于PDCCH的星座。使用QPSK方案调制控制信息。
解码SIB1数据
现在我们已经解码了与SIB1相关的控制信息,我们可以检索和解码实际的SIB1数据。
我们对DCI消息进行解析,给出相应的携带SIB1的PDSCH的配置,并对PDSCH进行解调。接收到的位被DL-SCH解码以产生SIB1位:
pdschIndices=ltePDSCHIndices(enb,pdsch,pdsch.PRBSet);[pdschRx,pdschHest]=lteExtractResources(pdschIndices,rxgrid,hest);%解码PDSCHdlschBits = ltePDSCHDecode(enb, pdsch, pdschRx, pdschHest, nest); / / / / / /%解码DL-SCH[sib1, crc] = lteDLSCHDecode(enb, pdsch, trblklen, dlschBits);
位向量sib1现在可以从MATLAB导出到ASN.1解码器中,以解码系统信息块Type1消息。
总结
该示例演示了如何使用LTE系统工具箱从实时LTE信号中提取系统信息。LTE系统工具箱支持信号的进一步处理,包括上行链路和TDD模式、EVM和ACLR等测量以及一致性测试。金宝app
您可以使用LTE System Toolbox来执行链路级和性能仿真,验证您自己的LTE实现,生成和分析LTE波形,或者,如我们在这里所示,通过连接MATLAB与测试和测量仪器来解调合成或实时信号。
1在LTE中,基站也被称为eNodeB。