混合PUCCH格式的传输和接收

本例展示了物理上行链路控制通道(PUCCH)格式1和2的传输和接收,包括使用LTE工具箱™在格式1和格式2的传输之间共享相同的物理资源的情况。

介绍

本例配置两个用户设备(UEs)来传输来自第一个UE的物理上行控制通道(PUCCH)格式1信号和来自第二个UE的PUCCH格式2信号。适当的解调参考信号(DRS)也被生成。发射信号经过两种不同的衰落信道,并加入加性高斯白噪声(AWGN),模拟两种信道在eNodeB上接收信号的情况。然后对每个信号(即属于每个UE的信号)进行同步、SC-FDMA解调、均衡、PUCCH解调,最后进行解码。生成的图显示,尽管通道共享相同的物理资源元素(REs),但仍然可以独立地估计这两个不同的信号。

问题1的配置

第一个UE是使用结构配置的ue1

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

问题2配置

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

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

  • 不同的无线网络临时标识符(RNTI)值(此处不使用,因为它仅与物理上行共享信道(PUSCH)传输相关,但不同的ue将具有不同的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格式1和PUCCH格式2的资源块中,PUCCH格式1使用的循环移位数。的参数ResourceSize指定PUCCH格式2使用的资源大小,有效地确定了PUCCH格式1传输的起始位置;这里我们指定ResourceIdx = 0它将使用第一个PUCCH格式1资源。

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

PUCCH 2配置

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

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

信道传播模型配置

两个UEs将通过的传播通道使用一个结构进行配置通道。通道的采样率配置为与第一个UE输出的采样率相匹配;注意,第二个UE的输出使用了相同的采样率,因为ue1.NULRBue2.NULRB都是一样的。当我们为每个UE使用此通道配置时种子不同的UE会设置不同的结构参数,从而产生不同的传播条件。

通道。NRxAnts = 4;%的接收天线的数目通道。DelayProfile =“ETU”;%延迟概要通道。DopplerFreq = 300.0;%多普勒频率通道。MIMOCorrelation =“低”;%MIMO相关通道。InitTime = 0.0;%初始化时间通道。NTerms = 16;在衰落模型用于%振荡器通道。ModelType =“GMEDS”;%瑞利衰落模型类型通道。InitPhase =“随机”;随机初始相位通道。没有rmalizePathGains =“上”;%正常化延迟轮廓功率通道。没有rmalizeTxAnts =“上”;发射天线归一化设定采样率信息= 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 /(信噪比*√(双(info.Nfft))) / sqrt (2.0);配置随机数生成器RNG('默认');

信道估计配置

信道估计器是使用结构配置的cec。在这里,三次插值将与12×1的平均窗口一起使用。这配置信道估计器使用一种特殊的模式,以确保能够解压和正交不同的重叠PUCCH传输。

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

PUCCH格式1代

现在,所有必要的配置完成后,PUCCH格式1,并产生了DRS。在PUCCH格式1携带HARQ指示符hi1在这种情况下,有两个指标,这意味着传输将是格式1b。PUCCH格式1 DRS不携带数据。

% PUCCH 1调制/编码HI1 = [0;1);创建HARQ指标disp (“hi1:”);
hi1:
disp (hi1。');
0 1
pucch1Sym = ltePUCCH1(ue1, pucch1, hi1);% PUCCH 1 DRS产生pucch1DRSSym = ltePUCCH1DRS(ue1, pucch1);

PUCCH格式2生成

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

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

PUCCH指数代

创建了PUCCH和PUCCH DRS传输的索引

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

UE 1的传输

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

创建资源网格grid1 = lteULResourceGrid (ue1);grid1 (pucch1Indices) = pucch1Sym;grid1 (pucch1DRSIndices) = pucch1DRSSym;% SC-FDMA调制txwave1 = lteSCFDMAModulate(ue1, grid1);%信道建模。另外增加了25个样本%波形,以覆盖信道建模中预期的延迟范围%(实现延迟和信道延迟扩展的组合)channel.Seed = 13;rxwave1 = lteFadingChannel(信道,[txwave1;零(25,1)]);

UE 2传输

现在传送第二个UE的整个信号。注意不同的随机种子channel.Seed与第一个UE比较。这将确保对两个传输使用不同的传播。

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

基站的接收

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

rxwave = rxwave1 + rxwave2;%添加噪声噪声= N*复数(randn(size(rxwave)), randn(size(rxwave)));rxwave = rxwave +噪声;

UE 1的同步和SC-FDMA解调

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

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

UE的信道估计与均衡

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

%信道估计[H1, n0] = lteULChannelEstimatePUCCH1(ue1, pucch1, cec, rxgrid1);%与PUCCH相对应的RE提取来自全国各地的所有特定的子帧%接收天线和信道估计[pucchrx1, pucchH1] = lteExtractResources(pucch1Indices, rxgrid1, H1);%均衡eqgrid1 = lteULResourceGrid (ue1);eqgrid1(pucch1Indices) = lteEqualizeMMSE(pucchrx1, pucchH1, n0);

PUCCH 1解码

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

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

UE 2接收器

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

%同步(和PUCCH 2 DRS解调/解码)[offset2, rxhi2] = lteULFrameOffsetPUCCH2 (ue2、pucch2 rxwave,长度(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相对应的RE提取来自全国各地的所有特定的子帧%接收天线和信道估计[pucchrx2, pucchH2] = lteExtractResources(pucch2Indices, rxgrid2, H2);%均衡eqgrid2 = lteULResourceGrid (ue2);eqgrid2(pucch2Indices) = lteEqualizeMMSE(pucchrx2, pucchH2, n0);% PUCCH 2解调rxcodedcqi = ltePUCCH2Decode(ue2, pucch2, eqgrid2(pucch2Indices));% PUCCH 2解码rxcqi = lteUCIDecode(rxcodedcqi, length(cqi));disp (“rxcqi:”);
rxcqi:
disp (rxcqi。');
0 1 1 0 0 1

显示估计通道

生成的图显示,尽管两种不同的信号具有相同的物理响应,但它们的信道估计是独立的。PUCCH格式1的信道估计用红色表示,而PUCCH格式2的信道估计用蓝色表示。

hPUCCHMixedFormatDisplay(H1, eqgrid1, H2, eqgrid2);

附录

这个例子使用了帮助函数: