主要内容

混合PUCCH格式传输和接收

本例显示了物理上行链路控制信道(PUCCH)格式1和2的传输和接收,包括使用LTE工具箱™同时从两个不同的用户设备(ue)传输格式1和格式2共享相同物理资源的情况。

简介

本例配置两个用户设备(UE)从第一个UE传输物理上行链路控制通道(PUCCH)格式1信号,从第二个UE传输PUCCH格式2信号。还生成适当的解调参考信号(DRS)。传输的信号通过两个不同的衰落信道传递,并加上加性高斯白噪声(AWGN),模拟在eNodeB上接收来自两个ue的信号。然后,每个信号(即属于每个UE的信号)被同步,SC-FDMA解调,均衡,PUCCH解调,然后最终解码。生成的图表显示,对于两个不同的信号,即使它们共享相同的物理资源元素(REs),信道也可以独立地估计。

ue1配置

第一个UE使用一个结构进行配置ue1

ue1。NULRB = 6;%资源块数量ue1。N年代ubframe = 0;子帧号ue1。NCellID = 10;物理层单元标识ue1。RNTI = 61;无线网络临时标识符ue1。CyclicPrefixUL =“正常”%循环前缀ue1。跳=“关闭”%跳频ue1。年代hortened = 0;为SRS传输保留最后的符号ue1。NTxAnts = 1;%发射天线个数

uue 2配置

类似地,配置结构用于配置第二个UE,ue2.这个结构与的结构相同ue1但有两个例外:

  • 没有缩短字段,因为这并不适用于PUCCH格式2。

  • 不同的无线网络临时标识符(RNTI)值(此处不使用,因为它只与物理上行共享信道(PUSCH)传输相关,但不同的终端会有不同的RNTI)。

ue2。NULRB = 6;%资源块数量ue2。N年代ubframe = 0;子帧号ue2。NCellID = 10;物理层单元标识ue2。RNTI = 77;无线网络临时标识符ue2。CyclicPrefixUL =“正常”%循环前缀ue2。跳=“关闭”%跳频ue2。NTxAnts = 1;%发射天线个数

PUCCH 1配置

对于第一个UE,使用格式1的PUCCH,因此使用适当的配置结构pucch1被创建。的参数CyclicShifts指定PUCCH Format 1在资源块中使用的循环移位次数,其中传输的是PUCCH Format 1和PUCCH Format 2的混合。的参数ResourceSize指定PUCCH格式2所使用的资源的大小,有效地确定PUCCH格式1传输的起始位置;这里我们指定ResourceIdx = 0它将使用第一个PUCCH Format 1资源。

pucch1。ResourceIdx = 0;PUCCH资源索引pucch1。DeltaShift = 1;%位移pucch1。CyclicShifts = 1;%循环移位数pucch1。ResourceSize = 0;分配给PUCCH格式2的资源大小

PUCCH 2配置

对于第二个UE,使用格式2的PUCCH,因此使用适当的配置结构pucch2被创建。参数值CyclicShifts而且ResourceSize与PUCCH格式1配置相同。的价值ResourceIdx设置为第一个PUCCH Format 2资源,这意味着现在为PUCCH Format 1和PUCCH Format 2配置的物理资源块将是相同的。

pucch2。ResourceIdx = 0;PUCCH资源索引pucch2。CyclicShifts = 1;%循环移位数pucch2。ResourceSize = 0;分配给PUCCH格式2的资源大小

信道传播模型配置

所述两个终端将通过的传播信道使用结构进行配置通道.通道的采样率配置为与第一UE输出端的采样率匹配;请注意,在第二个UE的输出上使用相同的采样率,因为ue1。NULRB而且ue2。NULRB都是一样的。当我们对每个UE使用此通道配置时,种子每个UE的结构参数设置不同,从而得到不同的传播条件。

通道。NRxAnts = 4;%接收天线个数通道。DelayProfile =“ETU”%延迟配置文件通道。多普勒频率= 300.0;%多普勒频率通道。MIMOCorrelation =“低”% MIMO相关性通道。InitTime = 0.0;%初始化时间通道。NTerms = 16;衰落模型中使用的振荡器通道。ModelType =“GMEDS”瑞利衰落模型类型通道。InitPhase =“随机”%随机初始相通道。没有rmalizePathGains =“上”正常化延迟配置文件功率通道。没有rmalizeTxAnts =“上”用于发射天线归一化%设置采样率info = lteSCFDMAInfo(ue1);通道。年代amplingRate = info.SamplingRate;

噪音的配置

信噪比由 年代 N R E 年代 / N 0 在哪里 E 年代 感兴趣的信号的能量是 N 0 就是噪声功率。可以确定要添加的噪声的功率,以便 E 年代 而且 N 0 在SC-FDMA解调后进行归一化,以达到所需的信噪比SNRdB.在SC-FDMA解调之前添加的噪声将被IFFT放大。放大是IFFT大小的平方根。在这个模拟中,这是通过将期望的噪声功率除以这个值来考虑的。此外,由于噪声的实部和虚部是分开产生的,在被组合成复加性高斯白噪声之前,噪声振幅必须按比例缩放 1 / 2 所以产生的噪声功率是1。

SNRdB = 21.0;正常化噪声功率信噪比= 10^(SNRdB/20);N = 1/(信噪比*根号(double(info.Nfft)))/根号(2.0);配置随机数生成器rng (“默认”);

信道估计配置

信道估计器使用结构进行配置cec.这里的三次插值将使用12 × 1 res的平均窗口。这配置信道估计器使用一种特殊模式,确保能够展开和正交不同重叠的PUCCH传输。

Cec = struct;通道估计配置结构cec。PilotAverage =“UserDefined”飞行员平均类型cec。FreqWindow = 12;% REs中频率平均窗口(特殊模式)cec。TimeWindow = 1;REs中平均窗口时间%(特殊模式)cec。InterpType =“立方”三次插值百分比

PUCCH格式1生成

现在所有必要的配置都完成了,生成了PUCCH Format 1及其DRS。PUCCH Format 1中包含HARQ指示灯hi1在这种情况下,有2个指示器,这意味着传输将是格式1b。PUCCH Format 1 DRS不携带任何数据。

% pucch1调制/编码Hi1 = [0;1);创建HARQ指标disp (“hi1:”);
hi1:
disp (hi1。');
0 1
pucch1Sym = ltePUCCH1(u1, pucch1, hi1);创建1个DRSpucch1DRSSym = ltePUCCH1DRS(u1, pucch1);

PUCCH格式2生成

PUCCH Format 2 DRS自带HARQ指示灯hi2在这种情况下,有2个指示器,这意味着传输将是格式2b。PUCCH格式2本身携带编码的信道质量信息(CQI)。的信息cqi这里是编码,然后调制。

% pucch2 DRS调制Hi2 = [1;1);创建HARQ指标disp (“hi2:”);
hi2:
disp (hi2。');
1
pucch2DRSSym = ltePUCCH2DRS(ue2, pucch2, hi2);% pucch2编码Cqi = [0;1;1;0;0;1);创建通道质量信息disp (医院药学部”:“);
cqi:
医院药学部disp(。');
0 1 1 0 0 1
codedcqi = lteUCIEncode(cqi);% pucch2调制pucch2Sym = ltePUCCH2(ue2, pucch2, codedcqi);

生成PUCCH指数

为PUCCH和PUCCH DRS传输创建索引

pucch1Indices = ltePUCCH1Indices(u1, pucch1);pucch2Indices = ltePUCCH2Indices(ue2, pucch2);pucch1DRSIndices = ltePUCCH1DRSIndices(u1, pucch1);pucch2DRSIndices = ltePUCCH2DRSIndices(ue2, pucch2);

ue1传输

现在传输了第一个UE的整体信号。其步骤是将PUCCH格式1和相应的DRS信号映射到空资源网格中,进行SC-FDMA调制,然后通过衰落传播信道传输。

%创建资源网格grid1 = lteULResourceGrid(ue1);grid1(pucch1Indices) = pucch1Sym;grid1(pucch1DRSIndices) = pucch1DRSSym;SC-FDMA调制txwave1 = lteSCFDMAModulate(ue1, grid1);通道建模。另外25个样品添加到末尾%波形,以覆盖信道建模预期的延迟范围%(实现延迟和通道延迟扩展的组合)通道。种子=13; rxwave1 = lteFadingChannel(channel,[txwave1; zeros(25,1)]);

uue 2传输

现在传输第二个UE的整体信号。注意不同的随机种子通道。种子与第一个UE的使用相比较。这确保了两个传输使用不同的传播。

%创建资源网格grid2 = lteULResourceGrid(ue2);grid2(pucch2Indices) = pucch2Sym;grid2(pucch2DRSIndices) = pucch2DRSSym;SC-FDMA调制txwave2 = lteSCFDMAModulate(ue2, grid2);通道建模。另外25个样品添加到末尾%波形,以覆盖信道建模预期的延迟范围%(实现延迟和通道延迟扩展的组合)通道。种子=15; rxwave2 = lteFadingChannel(channel, [txwave2; zeros(25, 1)]);

基站的接收

对基站接收机的输入进行建模,将上述两个褪色信号与功率高斯噪声加在一起。

Rxwave = rxwave1 + rxwave2;%添加噪音噪声= N*complex(randn(size(rxwave)), randn(size(rxwave)));Rxwave = Rxwave +噪声;

ue1的同步和SC-FDMA解调

UE1的上行帧定时估计使用PUCCH 1 DRS信号计算,然后用于解调SC-FDMA信号。生成的网格rxgrid1是一个三维矩阵。行数表示子载波数。列的数量等于子帧中SC-FDMA符号的数量。返回网格的子载波和符号的数量是相同的lteSLSCFDMADemodulate随着网格进入lteSLSCFDMAInfo.网格中的平面数(第三维)对应接收天线的数量。

%的同步offset1 = lteULFrameOffsetPUCCH1(u1, pucch1, rxwave);SC-FDMA解调rxgrid1 = lteSCFDMADemodulate(u1, rxwave(1+offset1:end,:));

ue1的信道估计与均衡

估计每个发射机和基站接收机之间的信道,并用于平衡其影响。来创建信道的估计lteULChannelEstimatePUCCH1使用。信道估计功能由结构配置cec.该函数返回一个三维复杂权重矩阵,该矩阵由传输网格中的通道应用于每个资源元素。第1维是子载波,第2维是SC-FDMA符号,第3维是接收天线。利用信道对接收资源网格的影响进行均衡lteEqualizeMMSE.此函数使用信道的估计(H1)以均衡所接收的资源网格(rxGrid1).

%信道估计[H1, n0] = lteULChannelEstimatePUCCH1(u1, pucch1, cec, rxgrid1);从所有给定子帧中提取对应于PUCCH的REs%接收天线和信道估计[pucchrx1, pucchH1] = lteExtractResources(pucch1Indices, rxgrid1, H1);%均衡eqgrid1 = lteULResourceGrid(u1);eqgrid1(pucch1Indices) = lteEqualizeMMSE(pucchrx1, pucchH1, n0);

PUCCH 1解码

最后对PUCCH格式1信道进行解码,提取有用的HARQ指示位。

rxhi1 = ltePUCCH1Decode(u1, pucch1, length(hi1),...eqgrid1 (pucch1Indices));disp (“rxhi1:”);
rxhi1:
disp (rxhi1。');
0 1

ue2接收机

UE2的上行帧定时估计使用PUCCH 2 DRS信号计算,然后用于解调SC-FDMA信号。在这种情况下,还可以找到在PUCCH Format 2 DRS上传达的Hybrid ARQ指示器。生成的网格rxgrid2是一个三维矩阵。来创建信道的估计lteULChannelEstimatePUCCH2使用。信道对接收到的资源网格的影响使用lteEqualizeMMSE进行均衡。最后对PUCCH格式2信道进行解码,提取出有用的CQI信息位。

%同步(和PUCCH 2 DRS解调/解码)[offset2,rxhi2] = lteULFrameOffsetPUCCH2(ue2,pucch2,rxwave,length(hi2));disp (“rxhi2:”);
rxhi2:
disp (rxhi2。');
1
SC-FDMA解调rxgrid2 = lteSCFDMADemodulate(ue2, rxwave(1+offset2:end,:));%信道估计[H2, n0] = lteULChannelEstimatePUCCH2(ue2, pucch2, cec, rxgrid2, rxhi2);从所有给定子帧中提取对应于PUCCH的REs%接收天线和信道估计[pucchrx2, pucchH2] = lteExtractResources(pucch2Indices, rxgrid2, H2);%均衡eqgrid2 = lteULResourceGrid(ue2);eqgrid2(pucch2Indices) = lteEqualizeMMSE(pucchrx2, pucchH2, n0);% pucch2解调rxcodedcqi = ltePUCCH2Decode(ue2, pucch2, eqgrid2(pucch2Indices));% pucch2解码rxcqi = lteUCIDecode(rxcodedcqi,长度(cqi));disp (“rxcqi:”);
rxcqi:
disp (rxcqi。');
0 1 1 0 0 1

显示估计通道

生成的图表显示,对于两个不同的信号,即使它们共享相同的物理res,信道也可以独立地估计。PUCCH格式1的信道估计用红色表示,PUCCH格式2的信道估计用蓝色表示。

hPUCCHMixedFormatDisplay(H1, eqgrid1, H2, eqgrid2);

图中包含一个轴对象。不同通道的通道估计的标题为Magnitude的axis对象包含2个类型为surface的对象。这些对象表示PUCCH 1, PUCCH 2。

附录

这个例子使用了这个helper函数。