LTE波形建模采用下行传输和物理通道

这个例子演示了如何为一个子帧生成包含物理下行共享信道(PDSCH)、相应的物理下行控制信道(PDCCH)传输和物理控制格式指示信道(PCFICH)的时域波形。

介绍

这个例子演示了如何使用LTE Toolbox™中的函数为6个资源块、4个天线传输分集生成一个完整的下行共享信道(DL-SCH)传输。对以下物理通道进行建模:

  • 物理下行链路共享信道(PDSCH)

  • 物理下行控制通道(PDCCH)

  • 物理下行链路控制格式指示通道(PCFICH)

本例为所有4个天线端口生成一个时域(后OFDM调制)。本例中只考虑一个子帧(数字0)。

注意:生成RMC波形的推荐方法是使用lteRMCDLTool,这个例子展示了如何通过创建和组合单个物理通道来构建波形,就像在LTE系统中一样。

它是设置

eNodeB设置配置了一个结构。

enb。NDLRB = 6;%下行资源块数(DL-RB)enb。CyclicPrefix ='正常';%CP长度enb。PHICHDuration ='正常';%正常持续时间enb。DuplexMode =“FDD”;% FDD双工模式enb.CFI = 3;% 4 PDCCH符号enb.Ng =“六”;% - 9组enb.CellRefP = 4;% 4天线端口enb。NCellID = 10;%细胞idenb。NSubframe = 0;%子帧号0

子帧的资源网格生成

资源网格可以很容易地使用创建lteDLResourceGrid。这将创建一个子帧的空白资源网格。该子帧是3维矩阵。的行数表示可用的子载波的数量,这是等于12 * enb.NDLRB因为每个资源块由12个子载波。列的数目等于OFDM符号的数量在子帧中,即7 * 2,因为我们具有用于正常循环前缀每时隙的7个OFDM符号,并且存在2个时隙中的子帧。在子帧面(第三尺寸)的数量为4对应于4个天线端口中规定enb.CellRefP

子帧= lteDLResourceGrid (enb);

DL-SCH和PDSCH设置

DL-SCH和PDSCH是使用结构配置的PDSCH。这里的设置配置4天线发射分集与QPSK调制。

pdsch。NLayers = 4;%图层数量pdsch。TxScheme ='TxDiversity';%传输方案pdsch.Modulation =“正交相移编码”;%调制方案pdsch.RNTI = 1;%的16位UE特定的屏蔽pdsch。房车= 0;%冗余版本

生成PDSCH映射索引

将PDSCH复杂符号映射到子帧资源网格的索引使用ltePDSCHIndices。此函数所需的参数包括一些单元范围的设置基站、信道传输配置PDSCH和物理资源块(prb)。后者指示用于传输PDSCH的资源分配。在本例中,我们假设所有资源块都分配给了PDSCH。这是使用列向量指定的,如下所示。

这些索引是“基于1”的,用于在资源网格上直接映射,因为MATLAB®使用基于1的索引。在本例中,我们假设子帧中的两个插槽共享相同的资源分配。通过指定一个两列矩阵作为分配,可以为每个槽分配不同的分配,其中每个列将引用子帧中的每个槽。

由此产生的矩阵pdschIndices有4列,每列包含一组线性样式的索引,指向每个天线端口中用于PDSCH的资源元素。注意,这个函数返回索引,避免分配给引用信号、控制区域、广播信道和同步信号的资源元素。

生成的索引以MATLAB所使用的1-base格式表示,但可以使用该选项使其基于标准的0基于“0”代替“基于1”。如果未指定此选项,则默认为基于1的索引生成。

用于DL-SCH传输的经编码块的大小可以由计算ltePDSCHIndices功能。ltePDSCHIndices返回一个信息结构作为它的第二个输出(pdschInfo),包含参数G指定编码和速率匹配的DL-SCH的数据比特的数量,以满足物理PDSCH容量。该值随后将被用于参数在DL-SCH的信道编码。

pdsch.PRBSet =(0:enb.NDLRB-1)。';%子帧资源分配[pdschIndices, pdschInfo] =ltePDSCHIndices(ENB,PDSCH,pdsch.PRBSet,{“基于1”});

DL-SCH信道编码

我们现在产生DL-SCH位和应用信道编码。这包括CRC计算,码块分段和CRC插入,Turbo编码,速率匹配和代码块级联。它可施行lteDLSCH

DL-SCH传输块大小是根据TS36.101,附录A.2.1.2中的规则选择的[1]“有效载荷大小的确定”与目标码率美元$ R = 1/3和子帧的比特数codedTrBlkSize

codedTrBlkSize = pdschInfo.G;%可用的PDSCH位transportBlkSize = 152;%传输块大小dlschTransportBlk = randi([0 1], transportBlkSize, 1);执行信道编码codedTrBlock = lteDLSCH(ENB,PDSCH,codedTrBlkSize,dlschTransportBlk);

PDSCH复杂符号生成

下面的操作被施加到编码的传输块,以产生物理下行链路共享信道的复码元:加扰,调制,层映射和预编码。这可以通过使用来实现ltePDSCH。以及中指定的一些计算单元范围的设置基站此功能也需要相关的调制和信道传输配置的其他参数,PDSCH。由此产生的矩阵pdschSymbols有4列。每一列都包含复数符号映射到每个天线端口。

pdschSymbols = ltePDSCH(enb, pdsch, codedTrBlock);

PDSCH映射

然后,使用一个简单的分配操作,就可以轻松地将复杂的PDSCH符号映射到每个天线端口的每个资源网格。PDSCH符号在资源网格中的位置由pdschIndices

在资源网格上映射PDSCH符号子帧(pdschIndices)= pdschSymbols;

DCI信息配置

下行链路控制信息(DCI),关于DL-SCH的资源分配,传输格式,以及相关的信息在DL-SCH混合ARQ传达信息。lteDCI可用于生成要被映射到物理下行链路控制信道(PDCCH)的DCI消息。这些参数包括下行链路资源块(RB),该DCI格式和所述资源指示值(RIV)的数量。26对应的满带宽分配的RIV。lteDCI返回一个结构dciMessage和含有该DCI消息比特的矢量dciMessageBits。两者都包含相同的信息;结构更加可读,而串行化DCI消息是要发送到信道编码级的更合适的格式。

dci。DCIFormat =“Format1A”;%DCI消息格式dci.Allocation.RIV = 26;%资源指示值[dciMessage, dciMessageBits] = lteDCI(enb, dci);% DCI消息

DCI信道编码

DCI消息位是信道编码的。这包括以下操作:CRC插入、尾式卷积编码和速率匹配。这个领域PDCCHFormat表明一个控制信道元素(CCE)用于PDCCH的传输,其中一个CCE由36个有用资源元素。

pdcch。NDLRB = enb.NDLRB;在全部BW DL-RB的数量%pdcch。RNTI = pdsch.RNTI;% 16位值数字pdcch。PDCCHFormat = 0;聚合级别1的% 1- cce%表演DCI消息比特编码,以形成编码比特DCIcodedDciBits = lteDCIEncode(PDCCH,dciMessageBits);

PDCCH位代

控制区域的容量取决于带宽、控制格式指示器(CFI)、天线端口的数量和信道分组。可以使用以下方法计算PDCCH可用的资源总数ltePDCCHInfo。这会返回一个结构pdcchInfo其中不同的字段表示可用于在不同的单元中的PDCCH的资源:比特的CCE,资源元素(RE)和资源元素组(REG)。在PDCCH区域可用的比特的总数量可以在现场中找到pdcchInfo.MTot。这允许我们用适当数量的元素构建一个向量。并不是PDCCH区域中的所有可用位都必须使用。因此,采用的惯例是将未使用的位设置为-1,而使用值为0或1的位位置。

注意,我们已经初始化了所有的元素pdcchBits到-1,表示最初所有的位都是未使用的。的元素codedDciBits被映射到适当的位置pdcchBits

只是所有位的子集pdcchBits也可以使用,这些被称为候选位。指数这些可用下列公式计算ltePDCCHSpace。这将返回一个两列的矩阵。每行表示对所提供的广泛的细胞设置可用的候选地点基站和PDCCH的配置结构pdcch。所述第一和第二列分别包含的第一和最后位置的指数各组候选。在这种情况下,这些指数是基于1的,并且是指比特,因此它们可被用于接入位置在pdcchBits。矢量pdcchBits有664元。的72位codedDciBits是否映射到所选的候选人pdcchBits。因此出664个的元素,72将采取0和1值,而其余的保持设置为-1。ltePDCCH将解释这些位置为未使用,只会考虑那些具有1和0。

pdcchInfo = ltePDCCHInfo (enb);%获取用于PDCCH的总资源pdcchBits = 1 * 1 (pdcchInfo。MTot, 1);%用-1初始化%为特定于ui的控制通道候选对象执行搜索空间候选= ltePDCCHSpace(ENB,PDCCH {“位”,“基于1”});%将PDCCH有效负载映射到可用的特定于ui的候选上。在这个例子中第一个可用的候选对象用于映射编码的DCI位。pdcchBits(候选(1,1):候选(1,2))= codedDciBits;

PDCCH复杂符号生成

从所使用的一组比特pdcchBits(值不设定为-1)PDCCH生成复码元。以下操作是必需的:加扰,QPSK调制,层映射和预编码。

ltePDCCH获取一组PDCCH位,并生成执行上述操作的复数PDCCH符号。在这种情况下,pdcchSymbols是一个4列矩阵,每个对应于每个天线端口。

pdcchSymbols = ltePDCCH(enb, pdcchBits);

PDCCH映射索引生成和资源网格映射

为资源网格上的符号映射生成PDCCH索引。pdcchIndices为4列矩阵,每个天线端口1列。行包含线性形式的索引,用于将PDCCH符号映射到子帧资源网格。

pdcchIndices (enb, {“基于1”});%的复合PDCCH符号被容易地映射到每个资源网格的%为每个天线端口子帧(pdcchIndices) = pdcchSymbols;

CFI信道编码

在子帧中的OFDM符号的数量被链接到控制格式指示符(CFI)值。细胞范围的设置结构基站指定为3的CFI值,这意味着,4个OFDM码元被以6的下行链路的资源块的情况下用于控制区域。使用CFI被信道编码lteCFI。将得到的编码比特组为32元素矢量。

cfiBits = lteCFI(ENB);

PCFICH复杂符号生成

然后,CFI编码位被打乱,QPSK调制,映射到层和预编码,形成PCFICH复杂符号。的pcfichSymbols是一个有4列的矩阵,其中每列包含映射到每个天线端口的PCFICH复杂符号。

pcfichSymbols = ltePCFICH(enb, cfiBits);

生成PCFICH索引和资源网格映射

使用适当的映射索引将PCFICH复杂符号映射到子帧资源网格。这些是通过以下方法生成的ltePCFICHIndices并将用于将PCFICH符号四联体映射到子帧中的第一个OFDM符号中的资源元素组。考虑了所有天线端口,避免了参考信号(RSs)使用的资源元素。注意得到的矩阵有4列;每一列包含每个天线端口的线性索引。这些索引是基于1的,但是也可以使用基于0的生成。使用的线性索引样式使资源网格映射过程非常简单。得到的矩阵中包含复杂的符号pcfichSymbols在指定的位置pcfichIndices

pcfichIndices = ltePCFICHIndices (enb);%映像PCFICH符号资源网格子帧(pcfichIndices)= pcfichSymbols;

绘制网格

绘制第一个天线的资源网格。这包括(黄色)在示例中添加的物理通道:PDSCH、PDCCH和PCFICH。

冲浪(abs(子帧(:,:1)));视图(2);轴;xlabel(OFDM符号的);ylabel (副载波的);标题(“资源网格”);

OFDM调制

通过对下行信号进行OFDM调制来实现时域映射。得到的矩阵有4列;每个列包含每个天线端口的样本。

[timeDomainMapped,timeDomainInfo] = lteOFDMModulate(ENB,子帧);

选择的参考书目

  1. 3GPP TS 36.101“用户设备(UE)无线电发射和接收”